设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 76|回复: 3

[已经解决] 请问以脚本的方式执行对话应该如何制作?

[复制链接]

[动态]还没有进行过任何战斗 (打开TA的战斗卡片)

Lv3.寻梦者

梦石
0
星屑
1294
在线时间
629 小时
注册时间
2010-7-25
帖子
746

开拓者

发表于 2019-1-11 15:26:21 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 jianyulei 于 2019-1-11 15:28 编辑

就是通常事件里的对话,如果我想纯粹用脚本来编写一段内容然后将其作为对话来执行,应该如何写才行?

[动态]受到重生归来的挑战,成功击败了对方。 (打开TA的战斗卡片)

Lv5.捕梦者

老鹰

梦石
28
星屑
9746
在线时间
4087 小时
注册时间
2012-5-26
帖子
2131

老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

发表于 2019-1-11 15:58:05 | 显示全部楼层
具体看 Game_Interpreter类 里的 显示文字 的方法 command_101 啦
它里面主要考虑到了对话框和其他相应指令的相互作用(比如选择框弹出时对话框不关闭)
如果不考虑这些,其实是非常基本的把4个参数传递给 game_message类的全局对象 中就好了

在 事件-脚本 里写
  1. wait_for_message
  2. $game_message.face_name = "此处修改为脸图名字"
  3. $game_message.face_index = 此处修改为脸图index序号0/1/.../7
  4. $game_message.background = 此处修改为背景类型序号0/1/2
  5. $game_message.position = 此处修改为位置类型序号0/1/2
  6. t = "此处变更为需要添加的文本内容\ec[1]转义符"
  7. $game_message.add(t)
  8. wait_for_message
复制代码

具体你可以自己试试看,而如果不是在事件脚本里写,那就要看你的目标场景里有没有window message对话框存在了,存在的话,这些参数依旧可以使用的,不过wait_for_message需要自己实现罢了

点评

主要是看 wait_for_message ,里面有对于 $game_message.busy? 的判定,保证了对话框显示完再继续执行之后的指令  发表于 2019-1-11 17:32
刚才试了下貌似直接进行的对话框也是和加在脚本中的公共事件一样是最后执行?  发表于 2019-1-11 17:22

评分

参与人数 2星屑 +20 +1 收起 理由
VIPArcher + 20 认可答案
jianyulei + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:fux2@moe9th.com|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2019-5-21 21:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表