赞 | 676 |
VIP | 62 |
好人卡 | 144 |
积分 | 336 |
经验 | 110435 |
最后登录 | 2024-11-1 |
在线时间 | 5108 小时 |
Lv5.捕梦者
- 梦石
- 0
- 星屑
- 33631
- 在线时间
- 5108 小时
- 注册时间
- 2012-11-19
- 帖子
- 4878
|
本帖最后由 芯☆淡茹水 于 2017-5-10 22:13 编辑
这个是现写的,已经测试。
相同的物品可以随时改变最大持有数。比如游戏前期改变道具1的最大持有数为10,游戏后期可以改变为100.
物品最大持有数改变后,物品的当前持有数不会改变。比如有 50把1号武器,把1号武器最大持有数改为20时,1号武器仍然拥有50把。
但在数量少于20时,再得到的话,不会超过20.
- //===============================================================================
- //===============================================================================
- /*:
- * @plugindesc 更改物品最大持有数量。
- *
- * @author 芯☆淡茹水
- *
- * @help ____________________________________________________________________
- * 初始物品最大数没有变化,都是 99,需要在游戏中用插件命令添加最大数。
- *
- * 插件命令格式: Add_MaxNum 类型 ID 最大数量
- * 其中 类型:道具写 item 武器写 weapon 防具写 armor
- * ID : 限制最大数所对应的道具/武器/防具的ID
- * 最大数量:该物品能持有的最大数量。
- *
- *举例:改变2号道具最大持有数为 10 : Add_MaxNum item 2 10
- * 改变5号武器最大持有数为 555 : Add_MaxNum weapon 5 555
- * 改变12号防具最大持有数为 110 : Add_MaxNum armor 12 110
- */
- //==============================================================
- var XdrsCMIGinPluginCommand = Game_Interpreter.prototype.pluginCommand;
- Game_Interpreter.prototype.pluginCommand = function(command, args) {
- XdrsCMIGinPluginCommand.call(this, command, args);
- if (command === 'Add_MaxNum') {
- var type = args[0], id = parseInt(args[1]), num = parseInt(args[2]);
- $gameParty.addNumData([type,id,num]);
- }
- };
- //===============================================================
- var xdrsCMIGamePartyInitialize = Game_Party.prototype.initialize;
- Game_Party.prototype.initialize = function() {
- xdrsCMIGamePartyInitialize.call(this);
- this._maxNumData = {'item':{}, 'weapon':{},'armor':{}};
- };
- Game_Party.prototype.addNumData = function(data) {
- data[2] = Math.max(data[2], 1);
- this._maxNumData[data[0]][data[1]] = data[2];
- };
- Game_Party.prototype.maxNumData = function(item) {
- switch (true) {
- case DataManager.isItem(item) :return this._maxNumData['item'];
- case DataManager.isWeapon(item):return this._maxNumData['weapon'];
- case DataManager.isArmor(item) :return this._maxNumData['armor'];
- }
- };
- Game_Party.prototype.maxItems = function(item) {
- return item.id in this.maxNumData(item) ? this.maxNumData(item)[item.id] : 99;
- };
- //===============================================================
复制代码
|
评分
-
查看全部评分
|