Project1

标题: 有没有方法可以使技能 描述 栏代入脚本编写? [打印本页]

作者: z22877248    时间: 2020-3-31 17:03
标题: 有没有方法可以使技能 描述 栏代入脚本编写?

我使用技能描述栏 可以代入变数 却没办法代入脚本 如果要带入脚本 请问是在windown_help的地方修改吗?
作者: KB.Driver    时间: 2020-3-31 21:21
第一次写MV插件,水平有限,请见谅。

数据库里的物品描述:
我的描述里有脚本。角色金钱为<js>$gameParty.gold()</js>,队伍第一人HP为<js>$gameParty.leader().hp</js>
我还想就地调用函数:<js>(function(){return 123;})();</js>

实际运行结果:
(, 下载次数: 58)

插件:
[pre lang="javascript"]
//=============================================================================
// ScriptedItemDescription.js
//=============================================================================

/*:
* @plugindesc 用于让物品描述代入js脚本的值
* @author Calendar99
*
* @help
* 物品描述中的<js>script</js>将被替换为script的执行结果
*
* 例如:
*   '1 + 1是 <js>1 + 1</js>'在帮助窗口中将显示为'1 + 1是 2'
*      
*/
Window_Help.prototype.setItem = function(item) {
    let desc = item ? item.description : '';
    try{
      desc = desc.replace(/<JS>(.+?)<\/JS>/ig, (m,c) => eval(c));
    } catch (e) {
      console.log('Window_Help.prototype.setItem failed.');
      alert('Failed item description: \n' + desc);
    }
    this.setText(desc);
};
[/pre]
作者: a22877248    时间: 2020-3-31 22:19
KB.Driver 发表于 2020-3-31 21:21
第一次写MV插件,水平有限,请见谅。

数据库里的物品描述:

大大谢谢你还特地改个脚本出来 可是我所有插件都关掉了 用了上面的代码在物品栏没有作用 然后我是想用在技能栏上面 我发现技能栏没有类似help的原代码




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