本帖最后由 多卡多卡 于 2019-7-26 08:40 编辑
以前回答过一个差不多的问题,其实开关插件就是是否启用插件中的那些代码:
//插件的参数帮助 //定义全局变量 //插件指令 if(val){ (function () { //插件主体的各种函数 })();}
//插件的参数帮助
//定义全局变量
//插件指令
if(val){
(function () {
//插件主体的各种函数
})();}
那个val自己定义个boolean型的变量,做个插件指令更改就可以了。
插件指令的写法:
var val = true; var _plugin_command = Game_Interpreter.prototype.pluginCommand; Game_Interpreter.prototype.pluginCommand = function (command, args) { _plugin_command.call(this,command,args); if(command === 'plugin') { switch (args[0]) { case 'on': val = true; break; case 'off': val = false; break; } } } /*用plugin on/plugin off 就可以控制开关了,当然别写的太简单了以免发生冲突*/
var val = true;
var _plugin_command = Game_Interpreter.prototype.pluginCommand;
Game_Interpreter.prototype.pluginCommand = function (command, args)
{
_plugin_command.call(this,command,args);
if(command === 'plugin')
{
switch (args[0])
{
case 'on': val = true; break;
case 'off': val = false; break;
}
}
}
/*用plugin on/plugin off 就可以控制开关了,当然别写的太简单了以免发生冲突*/
这是一种比较通用的方法,能够完全关闭一个插件。但对于一些在画面上添加东西的插件或者对核心代码魔改的比较厉害的插件,关闭会导致游戏崩溃。如果说只需要关闭某一个功能,在插件没有提供入口的情况下,那么只能参照楼上的方法了
|