本帖最后由 bleen 于 2023-6-25 07:18 编辑
事件的显示文本功能,要用脚本的形式写出来才可以实现,就结果而言,我不确定会节省时间,自己评估。
$gameMessage.setFaceImage('Actor1',0) $gameMessage.setBackground(0) $gameMessage.setPositionType(2) $gameMessage.add("\\P[1] test")
$gameMessage.setFaceImage('Actor1',0)
$gameMessage.setBackground(0)
$gameMessage.setPositionType(2)
$gameMessage.add("\\P[1] test")
这样就把显示文本那里的设置分割出来了。第一句是设置对话的脸图,第二句是设置对话的背景(窗口、暗淡、透明),第三句是设置对话的位置(顶部、中间、底部),第四句是设置文本内容(双引号部分)
重点在第一句和第四句。
第一句里,“Actor1”是设置脸图时选择的图片名,“0”是“Actor1”下的第一个头像作为脸图。根据身份来切换脸图,还是要写分支,但只需要写这第一句的分支,后面的三句可以共用,不需要重复写了。
第四句里,根据身份变换文本里面的姓名就更简单了,因为本身就有这样的功能,\P[1]意思是队伍里的第一个角色名字,谁是队伍里的队长就会显示谁的名字,它自己会动态改变,因为在双引号里面需要多加一个斜杠,所以是\\P[1]。
以上这样操作之后,文本部分不用重写,但脸图的分支还是有几个人就写几句,到底有没有节省时间我也不好说。理论上如果“Actor1和“0”的位置可以用变量代替,也许可以不用任何分支,但我没试过,你自己研究。我感觉会有问题,之所以显示文本这里让你设置脸图,就是系统不知道你想用什么脸图,哪怕变量获取了当前角色,它还是不知道,文本这里理论上是可以使用任何脸图的,不一定是数据库那里角色设置好的。
|