查看: 3847|回复: 4

[有事请教] RMMV怎么批量使用物品?

[复制链接]
梦石
0
星屑
287
在线时间
33 小时
注册时间
2018-9-30
回帖
23
发表于 2018-10-6 00:23:35 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
比如背包有10瓶药水,想一次性用5瓶。
每个问题的答案,都在你灵魂深处
梦石
0
星屑
22578
在线时间
2605 小时
注册时间
2015-7-4
回帖
917
发表于 2018-10-6 09:24:19 | 显示全部楼层
你要实现一次用5瓶的效果干吗不设计成一个高效药水呢?系统本来是给你设计成有使用时间限制的,丢掉西瓜捡芝麻这样好吗?

点评

哈哈哈,是的,可以设置成类似暗黑的药水合成,五瓶小的合成个大的  发表于 2018-10-6 19:58
回复

使用道具 举报

梦石
0
星屑
287
在线时间
33 小时
注册时间
2018-9-30
回帖
23
 楼主| 发表于 2018-10-7 20:52:01 | 显示全部楼层
额,啊啊啊啊啊哦哦哦哦哦
每个问题的答案,都在你灵魂深处
回复

使用道具 举报

梦石
0
星屑
227
在线时间
156 小时
注册时间
2016-6-12
回帖
8
发表于 2018-10-9 10:03:34 | 显示全部楼层
本帖最后由 Mandroid 于 2018-10-9 10:05 编辑
  1. (function ($) {
  2.     var _Scene_ItemBase_determineItem = Scene_ItemBase.prototype.determineItem;
  3.     Scene_ItemBase.prototype.determineItem = function () {
  4.         var item = this.item();
  5.         //这里只作为测试,当选择的是ID=1的物品,则直接进行合成操作,你可以自己做个菜单还有设置允许合成的物品
  6.         if(item.id == 1) {
  7.             this.synthesize(item, 5, 2);//用5个ID=1的物品合成1个ID=2的物品
  8.             this.activateItemWindow();
  9.         }else{
  10.             _Scene_ItemBase_determineItem.call(this);
  11.         }
  12.     };

  13.     /**
  14.      * 将指定数量的item合成另一个item
  15.      * @param item 用于合成的原料物品
  16.      * @param count 原料物品所需数量
  17.      * @param mixedItemID 合成后的物品ID
  18.      */
  19.     Scene_ItemBase.prototype.synthesize = function (item, count, mixedItemID) {
  20.         var itemCount = $gameParty.numItems(item);
  21.         if (itemCount >= count){
  22.             $gameParty.loseItem(item, count);
  23.             var mixedItem = $dataItems[mixedItemID];
  24.             $gameParty.gainItem(mixedItem, 1);
  25.         }
  26.     }
  27. })();
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部