Project1

标题: 求问如何自动为角色名增加边框和颜色 [打印本页]

作者: 越青    时间: 2020-8-25 21:08
标题: 求问如何自动为角色名增加边框和颜色
萌新求问一下,如何自动为角色名增加边框与颜色

例如:

变成

因为我的文本都基本是完成的了,角色名都在第一行,没办法手动改了。于是我的想法是检索第一行的角色名,然后对名称一个个修改(毕竟角色也不多)。
其实没有接触过java……然后就从网上找了一些语句,改了改大概是这样的:
JAVASCRIPT 代码复制
  1. temp= "哈罗德\n哈哈哈哈哈!"
  2. textcopy = temp;
  3. sizeoftextcopy = textcopy.indexOf('\n');
  4. resulttext = textcopy.substring(0,sizeoftextcopy);
  5. resulttext2 = textcopy.substring(0,sizeoftextcopy+1);
  6. if (resulttext == "哈罗德"){
  7. resulttext = "\\C[2]【哈罗德】\\C[0]"
  8. }
  9. textcopy = textcopy.replace(resulttext2,resulttext+"\n");
  10. temp = textcopy
  11. $gameMessage.add(temp)

这个在事件的脚本中已经可以成功运行了,然而要搬到插件里的时候又有疑惑了……因为不知道要把这段代码放到哪里去,文件夹里面的js文件真的看晕了……
其实也有把别人的插件拿过来修改过,但是感觉就是乱改一通,也有很多问题。貌似在事件中\\C[2]是可以变成颜色的,但是不知道为什么换进去了就只能显示\C[2]而非变色。
于是求问一下,要实现自动为角色名增加边框和颜色的功能,要怎么修改插件呢?
作者: 剑崎一真Blade    时间: 2020-8-27 16:39
试试这个?https://www.jianshu.com/p/e4fdcf3b09cf
YEP.73 – Message Macros
作者: 越青    时间: 2020-8-27 20:05
本帖最后由 越青 于 2020-8-27 21:37 编辑

自己尝试找了一会儿终于找到Window_Message了,
然后试着在Window_Message.prototype.startMessage里面强行插入了上面那段代码……改了改大概是这样的。
JAVASCRIPT 代码复制
  1. Window_Message.prototype.startMessage = function() {
  2.     this._textState = {};
  3.     this._textState.index = 0;
  4.  
  5. var textcopy = this.convertEscapeCharacters($gameMessage.allText());
  6. var sizeoftextcopy = textcopy.indexOf('\n');
  7. var resulttext = textcopy.substring(0,sizeoftextcopy);
  8. var resulttext2 = textcopy.substring(0,sizeoftextcopy+1);
  9. if (resulttext == "哈罗德"){
  10. resulttext = "\\c[2]【哈罗德】\\c[0]";
  11. textcopy = textcopy.replace(resulttext2,resulttext+"\n");
  12. }
  13.     this._textState.text = textcopy;
  14.     this.newPage(this._textState);
  15.     this.updatePlacement();
  16.     this.updateBackground();
  17.     this.open();
  18. };

但是还是存在着颜色不能显示的问题,实际显示的还是\C[]而非颜色的修改。
到底是出了什么问题呢?
==============================================
自己改了一下,发现13行改成这句就可以了
this._textState.text = this.convertEscapeCharacters(textcopy);
虽然从头到尾不知道自己写的代码是什么意思,但是能用就好




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