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

Project1

 找回密码
 注册会员
搜索
查看: 5712|回复: 8
打印 上一主题 下一主题

[有事请教] RPG Maker MV 能把对话放在TXT里面读取吗?

[复制链接]

Lv5.捕梦者

梦石
0
星屑
29390
在线时间
604 小时
注册时间
2014-7-18
帖子
729

开拓者

1
发表于 2018-8-9 12:53:49 | 显示全部楼层
本帖最后由 xjzsq 于 2018-8-9 12:56 编辑

人物的对话实际上都是储存在所在地图中的json中,格式是:
会被包在"list"这一项中。之后会有更换人物图像的记录:{"code":101,"indent":0,"parameters":["L",0,0,2]}
这句话的意思就是下面的所有对话的头像都是图片"L.png"中0,0位置的脸图,code:101的意思是这条记录用来改变脸图,其他的不用管(实际上是我不知道);之后就会跟着一些对话。{"code":401,"indent":0,"parameters":["text"]},401的意思是这条记录是用来表示对话的,然后会显示text对话,而脸图用最后一次设置的脸图(也就是上面的L,0,0,2)。搞明白了这个就可以随便找个语言写个程序,把写好的对话转换成标准的json格式,这样应该还是比复制粘贴到MV快的。
大概这个程序珂以像下面这样写:(cpp)
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. const int maxn=100000001;
  4. char name[maxn],text[maxn];
  5. int main()
  6. {
  7.         freopen("a.txt","r",stdin);
  8.         freopen("solution.json","w",stdout);
  9.         while(1)
  10.         {
  11.                 int top=0;
  12.                 while(name[top-1]!=':')name[top++]=getchar();
  13.                 //cout<<name<<endl;
  14.                 name[top-1]=0;top=0;
  15.                 while(text[top-1]!='\n')text[top++]=getchar();
  16.                 text[top-1]=0;
  17.                 printf("{\"code\":101,\"indent\":0,\"parameters\":[\"%s\",0,0,2]},{\"code\":401,\"indent\":0,\"parameters\":[\"%s\"]},",name,text);
  18.         }
  19. }
复制代码



这个就珂以读取a.txt中的剧本,然后输出到solution.json中,要求a.txt中的文本格式是
人物脸图文件名:人物对话,注意冒号必须是英文冒号(这个珂以用替换功能替换),之后每行一句人物对话,最后复制到地图的json文件中就好




评分

参与人数 1+1 收起 理由
若得 + 1 我很赞同

查看全部评分

回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-18 05:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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