Skip to content

对话树

处理对话树,使用Yarn Spinner制作。通过多个选择制作复杂对话非常有用。Yarn Spinner编辑器嵌入在GDevelop中,因此您可以在不离开GDevelop的情况下编辑您的对话。详细说明请查看此链接。

动作

清除对话状态 清除对话状态。这将重置玩家所做出的所有选择积累的对话状态。当玩家开始新游戏时很有用。

完成文本滚动 完成文本滚动。每当您想要跳过滚动时,请使用此操作。

确认所选选项 将所选选项设置为已确认,这将验证它并前进到下一个节点。使用其他操作来选择选项(参见“选择下一个选项”和“选择上一个选项”)。

转到下一个对话行 转到下一个对话行。当玩家按下按钮时,使用此操作前进到下一个对话行。

从Json文件加载对话树 从Json文件加载对话数据对象 - Yarn json格式。使用此命令在游戏开始时加载所有对话数据。

从场景变量加载对话树 从场景变量加载对话数据对象 - Yarn json格式。使用此命令在游戏开始时加载所有对话数据。

加载对话状态 加载对话状态。如果之前使用“保存状态”操作将其存储在变量中,则使用此操作恢复对话状态。

保存对话状态 保存对话状态。使用此操作将对话状态存储到变量中,以便以后用于保存游戏。这样,玩家的选择可以成为游戏保存的一部分。

滚动文本 滚动文本。当您想创建打字机效果时,使用此操作与计时器和“获取被剪切文本”。每次运行该操作时,文本中会出现一个新字符。

选择下一个选项 选择下一个选项(对所选选项编号加1)。当对话行类型为“选项”并玩家按下按钮更改所选选项时,请使用此操作。

按编号选择选项 按编号选择选项。当对话行类型为“选项”并玩家按下按钮更改所选选项时,请使用此操作。

选择上一个选项 选择上一个选项(从所选选项编号减去1)。当对话行类型为“选项”并玩家按下按钮更改所选选项时,请使用此操作。

设置对话状态布尔变量 设置对话状态布尔变量。使用此操作设置对话数据正在使用的变量。

设置对话状态数字变量 设置对话状态数字变量。使用此操作设置对话数据正在使用的变量。

设置对话状态字符串变量 设置对话状态字符串变量。使用此操作设置对话数据正在使用的变量。

从分支开始对话 从分支开始对话。使用此操作从指定分支开始对话。

停止运行对话 停止运行对话。使用此操作中断对话解析。

条件

比较对话状态布尔变量 比较对话状态变量。使用此操作通过对话变量触发游戏事件。

比较对话状态数字变量 比较对话状态数字变量。使用此操作通过对话变量触发游戏事件。

比较对话状态字符串变量 比较对话状态字符串变量。使用此操作通过对话变量触发游戏事件。

当前对话分支包含标签 检查当前对话分支是否包含特定标签。标签是一种驱动游戏逻辑的替代有用方式。

当前对话分支标题 检查当前对话分支标题是否等于一个字符串。当玩家访问特定对话分支时,使用此操作触发游戏事件。

对话包含分支 检查对话是否具有指定名称的分支。使用此操作检查加载的对话数据中是否存在对话分支。

被剪切文本已完成滚动 检查被剪切文本滚动是否已完成。使用此操作防止在打字效果显示完整文本之前玩家进入下一个对话行。

选定选项是否已更改 当当前对话行类型为选项时,检查选定选项是否已更改。使用此操作检测玩家何时选择了另一个选项,以便重新绘制选择箭头的位置。

命令已调用 检查是否已调用特定命令。如果是一个<>, 您甚至可以使用CommandParameter表达式获取参数。

对话行类型 检查当前对话行是三种现有类型之一。使用此操作设置每种类型执行的逻辑。 这三种类型分别是: - 文本:显示对话文本时。 - 选项:显示对话选择的分支/选项时。 - 命令:通过对话数据触发时。<

对话正在运行 检查对话是否正在运行。使用此操作例如在与非玩家角色交谈时锁定玩家移动。

分支标题已被访问 检查分支是否已被访问

表达式

表达式

描述

DialogueTree::BranchTag(number)

通过索引获取运行对话的当前分支的标签

🔢 数字

标签索引号

DialogueTree::BranchTags()

获取运行对话的当前分支的标签

DialogueTree::BranchText()

获取当前分支的完整原始文本

DialogueTree::BranchTitle()

获取运行对话的当前分支的标题

DialogueTree::ClippedLineText()

获取被打字机特效裁剪的对话行文本。使用“滚动文本”操作来控制打字机效果。

DialogueTree::CommandParameter(number)Get the parameters of a command call - <>

🔢 Number

parameter Index Number Optional.

DialogueTree::CommandParametersCount()

Get the number of parameters in the currently passed command

DialogueTree::HorizontalOptionsList(string)

Get the text of all available options from an Options line type as a horizontal list. You can also pass the selected option's cursor string, which by default is ->

string

Options Selection Cursor

DialogueTree::LineText()

Returns the current dialogue line text

DialogueTree::Option(number)

Get the text of an option from an Options line type, using the option's Number. The numbers start from 0.

🔢 Number

Option Index Number

DialogueTree::OptionsCount()

Get the number of options in an options line type

DialogueTree::SelectedOptionIndex()

Get the number of the currently selected option. Use this to help you render the option selection marker at the right place.

DialogueTree::TagParameter(number)

Get parameter from a Tag found by the branch contains tag condition

🔢 Number

parameter Index Number Optional.

DialogueTree::Variable(string)

Get dialogue state value

string

Variable Name

DialogueTree::VerticalOptionsList(string)

Get the text of all available options from an Options line type as a vertical list. You can also pass the selected option's cursor string, which by default is ->

string

Options Selection Cursor

DialogueTree::VisitedBranchTitles()

Get a list of all visited branches


This page is an auto-generated reference page about the Dialogue Tree _feature of GDevelop, the open-source, cross-platform game engine designed for everyone.