欢迎光临散文网 会员登陆 & 注册

【RenPy】简单剧情逻辑控制教程

2022-10-06 10:45 作者:黑凤梨BlackPineappl  | 我要投稿

效果如下

这一期教程是解答一个群友光明@的问题。 感谢光明@提供文案素材! 本教程在光明@许可下发出。


这个教程的核心思想就是jump和call的用法。jump的话就是有去无回,call的话执行完,会回到之前的地方。

下面摘抄自官方文档:(https://www.renpy.cn/doc/label.html)


jump语句

jump语句用于将主控流程转入给定的脚本标签(label)处。

若出现了 expression (表达式)关键词,关键词后面的表达式将被赋值,而被计算后的对应字符串则会被用作跳转目标的标签语句。若未出现 expression (表达式)关键词,跳转目标的标签名字就必须精确指定。

与call语句不同,jump语句不会将下一个语句放入栈(stack)中。因此,执行完跳转标签对应的语句块之后,主控流程不会回到跳转前的脚本位置。


call语句

call语句用于将主控流程转入给定的脚本标签(label)处。call语句会将下一条语句压入到调用栈(stack)中,并允许主控流程在执行完这次调用后,回到调用发生的脚本位置。

若出现了 expression (表达式)关键词,关键词后面的表达式将被赋值,而被计算后的对应字符串则会被用作跳转目标的标签语句。若未出现 expression (表达式)关键词,跳转目标的标签名字就必须精确指定。

from 分句是可选的,在label语句后面直接添加入参名和值,并直接在该label下直接使用。一个命名直白的标签(lable)有助于我们能利用栈(stack)回到脚本里合适的地方,就算加载的是修改过的脚本。

call语句可以带入参的情况,在PEP 3102中有详细说明。

当我们使用一个带入参列表的调用表达式时,必须在表达式和入参列表之间插入关键词 pass 。否则,入参列表会被当作表达式的一部分,而不是call语句的一部分。


视频中使用的代码如下


【RenPy】简单剧情逻辑控制教程的评论 (共 条)

分享到微博请遵守国家法律