Project1

标题: 写插件在开头写上$gameVariables._data[1]=1为什么不行? [打印本页]

作者: 风之竹    时间: 2018-5-7 09:18
标题: 写插件在开头写上$gameVariables._data[1]=1为什么不行?


开头这样写没有效果,而且连下面的代码也失效了?
作者: yang1zhi    时间: 2018-5-7 09:34
你不要管这一行
你觉得你这一段格式是正确的吗。
作者: fux2    时间: 2018-5-7 10:01
插件里有错误的话之后的代码都不会被加载了。
你这里语法也许也有错误(随便看的一眼不确定
重要的是游戏最初游戏变量是没有初始化的,所以你赋值肯定是非法的。
作者: 风之竹    时间: 2018-5-7 10:11
yang1zhi 发表于 2018-5-7 09:34
你不要管这一行
你觉得你这一段格式是正确的吗。

大佬 正确的格式应该怎么写?
作者: 风之竹    时间: 2018-5-7 10:12
fux2 发表于 2018-5-7 10:01
插件里有错误的话之后的代码都不会被加载了。
你这里语法也许也有错误(随便看的一眼不确定
重要的是游戏最 ...

F8看了下 就是这段有问题 应该就是游戏最初游戏变量是没有初始化的,所以你赋值肯定是非法的。 谢谢大佬解惑
作者: ekmomo    时间: 2018-5-7 11:16
本帖最后由 ekmomo 于 2018-5-7 11:24 编辑

下次把行数也截上,要不不好交流。
这个写法最大的问题是,它写在了立即执行函数里。把第一行第二行删掉,倒数第一行也删掉。

立即执行函数是一个很邪门的东西。首先它确实能省下一些内存和CPU(它形成的私有变量,在立即执行完成后会被释放),但是如果操作不当的话,也很容易形成闭包,这造成的内存泄漏可比多一个全局变量(字符串是栈)多太多了。不推荐初学者使用。

更推荐的写法是定义一个对象,用对象的属性(堆)来储存原来的原型方法。

var mipha = {}
mipha.gameActor_levelUP = Game_Actor.prototype.levelUP

mipha.gameActor_levelUP.call(this);
作者: gyhy17951    时间: 2018-5-15 10:09
只保留从“$gameV.....”到   “.....[1].level”




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