开始一个简单的对话

开始一个简单的对话 #


让我们来写一个简短的对话剧本 #


  1. 调用游戏自身的初始化剧本 #

    游戏自身准备了很多用于初始化的剧本,比如样例中的System/System_Subroutine.BeginAdvSystem/System_Subroutine.EndAdv

    在对话剧本的首尾通过gosub分别执行这两个初始化剧本,让游戏进入对话的模式

    当然,有对话模式,自然就有裁判模式,后续也会有用于初始化裁判模式的剧本

    ;初始化日常活动状态
    @Gosub System/System_Subroutine.BeginAdv
    
    ;结束日常活动状态
    @Gosub System/System_Subroutine.EndAdv
    
  2. 展示背景 #

    通过back指令可以修改游戏的背景

    可以通过解包工具Assetripper解包背景图资源查看对应的编号,也可以直接查看游戏自带的剧本寻找自己需要的背景的编号

    先指定 5_1 为背景图,再指定黑色的遮罩层图层消失

    ;显示背景
    @back 5_1
    ;将最上面原本黑色的Overlay遮罩层变为透明,同时还指定了动画时间
    @back SubId:"Overlay" Transparent tint:"#000000" time:0.99 wait:true
    
  3. 显示人物 #

    通过char指令显示人物,显示的方式一般是{人物ID}.{表情,左手,右手}

    人物ID和表情相关可以通过解包工具Assetripper解包人物立绘查看,也可以直接查看游戏自带的剧本寻找自己需要的编号

    ;显示艾玛
    @char Ema pos:50,50
    
    ;显示雪莉,表情是Smile1
    @char Sherry.Smile1 pos:30,50
    
    ;显示汉娜,表情是Angry1,双手是状态2
    @char Hanna.Angry1,ArmR2,ArmL2 pos:70,50
    
  4. 隐藏人物 #

    隐藏角色立绘可以通过hide指令隐藏指定立绘,也可以通过hidechars指令隐藏所有角色立绘

    ;隐藏艾玛
    @hide Ema
    
    ;隐藏全部角色
    @hideChars
    
  5. 打印文字 #

    打印文字有多种方法,可以使用print指令打印文字,也可以直接通过人物ID: 对话纯文本的格式实现打印文字

    @print "完美犯罪?这词真让人热血沸腾呢!" author:"Sherry" speed:1 waitInput:true Wait:true
    
    Ema: 这是一个测试用例,我来客串一下。
    Ema: 再说一句就下线了。
    
    这里是一段空白。
    
  6. 结束剧本 #

    可以通过goto指令跳转到Mod安装包内的Tool.nani里的EndToTitle标签实现返回到标题页

    也可以通过returntotitle指令直接返回到标题页,不过直接执行这个指令,可能会导致部分UI没有被隐藏,在返回标题页后仍旧残留在界面上

    ;跳转到结束
    @goto SherryAppleJuice_ExampleMod/Tools.EndToTitle
    
  7. 完整样例 #

    ;初始化日常活动状态
    @gosub System/System_Subroutine.BeginAdv
    
    ;显示背景
    @back 5_1
    ;将最上面原本黑色的Overlay遮罩层变为透明,同时还指定了动画时间
    @back SubId:"Overlay" Transparent tint:"#000000" time:0.99 wait:true
    
    ;显示艾玛
    @char Ema pos:50,50
    ;艾玛说话
    Ema: 这是一个测试用例,我来客串一下。
    Ema: 再说一句就下线了。
    ;隐藏艾玛
    @hide Ema
    
    这里是一段空白。
    
    ;显示雪莉,表情是Smile1
    @char Sherry.Smile1 pos:30,50
    ;雪莉说话
    Sherry: 这是一个测试用例,我也来客串一下。
    Sherry: 接下来请汉娜出场。
    ;显示汉娜,表情是Angry1,双手是状态2
    @char Hanna.Angry1,ArmR2,ArmL2 pos:70,50
    ;汉娜说话
    Hanna: 没事不要随便叫我出来啦。
    ;隐藏全部角色
    @hideChars
    
    ;结束日常活动状态
    @gosub System/System_Subroutine.EndAdv
    
    ;跳转到结束
    @goto SherryAppleJuice_ExampleMod/Tools.EndToTitle
    

如果出现红字 #

Failed to load localization document for XXX

如果控制台出现红字 Failed to load localization document for XXX

这个报错是本地化配置相关,参考这里~

本地化配置错误