Project1

标题: 对话功能的浅谈,有大佬吗 [打印本页]

作者: 18958043911    时间: 2022-10-12 22:38
标题: 对话功能的浅谈,有大佬吗
写了一段 游戏对话的内容的脚本呢

function team_say(s,num){
    // 更改对话者脸图
    $gameMessage.setFaceImage('Actor1',num-1)
    // 更改对话框为窗口
    $gameMessage.setBackground(0)
    // 更改窗口为底部
    $gameMessage.setPositionType(2)
    // 说话内容
    $gameMessage.add(s)      
}
//调用 案列 队伍1号 说话 你好
// team_say('你好',1)


成功了

但是多个一起的时候


只有一个头像


不知道为啥失败了 只有一个头像 而且是最后一个头像
有大佬研究过吗
作者: 18958043911    时间: 2022-10-12 22:40
在此感谢了,萌新上路
作者: 41workroom    时间: 2022-10-13 07:12
你去看看官方文案里有没有清除文字的操作
或者你一条消息,直接占满三行文字,下一条信息就会自动清空什么的
作者: apple5740    时间: 2022-10-13 08:43
本帖最后由 apple5740 于 2022-10-13 08:48 编辑

你好
1.
$gameMessage.setFaceImage('Actor1',num-1) 是设置脸图,您的方法是设置了三次,在当前帧运行下,应当是显示最后的脸图。
就好像一个变量修改了几次,输出时显示最后修改的值:var a = 2; a = 3; a = 4; 最后 输出a 是4 呢。
2.
$gameMessage.add(s) ,可以看成是在原有的基础上添加文字,所以文字看起来是增加啦。

3.我猜测你可能是想让它们分别出现一次,试试这样,(也许它会有一些问题,你需要在对话框出现的时候点击,才会出现下一个对话框,如果超出时间,将不会显示下一个对话)
具体实现按照自己的需求制作就好了。


4.你可以参考
rmmz_objects中的Game_Interpreter.prototype.command101,来完善一些设定
作者: 18958043911    时间: 2022-10-13 09:20
41workroom 发表于 2022-10-13 07:12
你去看看官方文案里有没有清除文字的操作
或者你一条消息,直接占满三行文字,下一条信息就会自动清空什么 ...

感谢回复,不错的建议,这就回去看看
作者: 18958043911    时间: 2022-10-13 09:21
apple5740 发表于 2022-10-13 08:43
你好
1.
$gameMessage.setFaceImage('Actor1',num-1) 是设置脸图,您的方法是设置了三次,在当前帧运行下,应 ...

上面的这个试过 然而结果是一样的,一次不错的尝试,感谢
作者: lqi991    时间: 2022-10-13 17:53
本帖最后由 lqi991 于 2022-10-13 17:55 编辑

# 在显示文本的代码下一行输入 this.setWaitMode('message');
# 参考如下(复制粘贴到脚本):
  1. team_say('好好学习天天向上',1)
  2. this.setWaitMode('message');
复制代码

作者: 18958043911    时间: 2022-10-14 20:22
lqi991 发表于 2022-10-13 17:53
# 在显示文本的代码下一行输入 this.setWaitMode('message');
# 参考如下(复制粘贴到脚本):
...

可以用 非常感谢啊




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1