Project1

标题: 第一次做RPG游戏,有关于脚本的初级问题 [打印本页]

作者: huzhouczy    时间: 2015-12-21 18:57
标题: 第一次做RPG游戏,有关于脚本的初级问题
自接触MV以来,在论坛里也看过些,我明白有脚本一事。也下载了几个脚本,我也会把它们拷贝到游戏工程下的JS目录下的plugins目录中,并在MV中开启这个脚本。
但是,我还是不太清楚的是:在MV中该如何具体使用这个脚本插件啊?
请大神们可以给我较细一些的指引,我万分感谢!~
作者: 汪汪    时间: 2015-12-21 19:01
<script type="text/javascript" src="js/rpg_managers.js"></script>



//-----------------------------------------------------------------------------
// PluginManager
// 插件管理器
// The static class that manages the plugins.
// 这个静态的类 管理 插件

function PluginManager() {
    throw new Error('This is a static class');
}
//路径
PluginManager._path         = 'js/plugins/';
//脚本
PluginManager._scripts      = [];
//错误地址
PluginManager._errorUrls    = [];
//参数
PluginManager._parameters   = {};
//安装
PluginManager.setup = function(plugins) {
    plugins.forEach(function(plugin) {
        if (plugin.status && !this._scripts.contains(plugin.name)) {
            this.setParameters(plugin.name, plugin.parameters);
            this.loadScript(plugin.name + '.js');
            this._scripts.push(plugin.name);
        }
    }, this);
};
//检查错误
PluginManager.checkErrors = function() {
    var url = this._errorUrls.shift();
    if (url) {
        throw new Error('Failed to load: ' + url);
    }
};
//参数
PluginManager.parameters = function(name) {
    return this._parameters[name.toLowerCase()] || {};
};
//设置参数
PluginManager.setParameters = function(name, parameters) {
    this._parameters[name.toLowerCase()] = parameters;
};
//读取脚本
PluginManager.loadScript = function(name) {
    var url = this._path + name;
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;
    script.async = false;
    script.onerror = this.onError.bind(this);
    script._url = url;
    document.body.appendChild(script);
};
//在错误
PluginManager.onError = function(e) {
    this._errorUrls.push(e.target._url);
};


        <script type="text/javascript" src="js/plugins.js"></script>



// Generated by RPG Maker.
// Do not edit this file directly.
var $plugins =
[
{"name":"Fonts","status":true,"description":"Change game default fonts and waiting fonts to load","parameters":{"Bitmap Font":"\"黑体\",GameFont","Window Font":"\"黑体\",GameFont","Fonts":"\"黑体\",GameFont"}}
];




<script type="text/javascript" src="js/main.js"></script>


//=============================================================================
// main.js
//=============================================================================

//插件管理器 安装
PluginManager.setup($plugins);
//窗口正在加载
window.onload = function() {
        //场景管理器运行 引导场景 (Scene_Boot);
    SceneManager.run(Scene_Boot);
};


作者: grammy416    时间: 2015-12-21 19:36
那你要看,脚本的说明。里面写了功能和用法。
作者: taroxd    时间: 2015-12-21 21:09


点击 Help 可以看到说明
作者: huzhouczy    时间: 2015-12-21 21:12
谢谢楼上的大神,可以我还是没看懂,我希望有更简单易懂的说明,谢谢
作者: huzhouczy    时间: 2015-12-21 21:15
比如说,我做了我在一楼的操作以后,在MV中该如何调用这个插件。谢谢
作者: taroxd    时间: 2015-12-21 21:33
huzhouczy 发表于 2015-12-21 21:15
比如说,我做了我在一楼的操作以后,在MV中该如何调用这个插件。谢谢


按照 Help 中的范例所写的,Write <skill_id:3> in a weapon's note field(在一个武器的备注区域内写下 <skill_id:3>)

不知道这句话在说什么的话,建议先熟悉 MV 编辑器的各项功能。我觉得这个插件的说明已经简单易懂到没法进一步解释了……
作者: 汪汪    时间: 2015-12-21 22:37
额,好像有点搞错了楼主的题目,这么说吧
有的插件是放到 js/plugins文件夹里,然后再插件管理器里选择它,开关为on 就可以直接调用的
有的插件则有一些参数,你可以在插件管理器里设定
而有的插件需要你在相应的地方进行修改来满足它的条件,比如7楼的那个,就是需要
       在一个武器的备注区域内写下 <skill_id:3>
来使用它的效果
一般在帮助里作者会有说明

最后需要,具体问题具体分析.如何使用最后还是取决于插件的功能和实现方式




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