查看: 2548|回复: 8

[已经解决] 请问如何检测一个主角是否拥有被随机出来的物品?

[复制链接]
梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-6-4
回帖
15
发表于 2014-6-8 22:03:13 | 显示全部楼层 |阅读模式

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

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

×
之前我已经用
  1. item = $data_items[1 + rand(16)]
  2. $game_variables[41] = item.name
  3. $game_variables[42] = item.price
复制代码
获得了物品的名字和价格,下一步该如何检测呢?
貌似只能用脚本了吗?
本人刚刚接触Ruby,还望大神详细点。感谢!

老黄鸡

梦石
4
星屑
45714
在线时间
7951 小时
注册时间
2009-7-6
回帖
13338

MZ评测员RM创作大赛01组委会开拓者贵宾

发表于 2014-6-8 22:05:47 | 显示全部楼层
你把随机出来的这个装备ID保存到变量里不就好了。
RGDirect - DirectX驱动的RGSS,点我了解.
(排满,暂停)RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-6-4
回帖
15
 楼主| 发表于 2014-6-8 22:22:27 | 显示全部楼层
似乎有点明白了,这样做是不是还需要一个类似银行系统?还望指教
回复

使用道具 举报

无节操

梦石
0
星屑
608
在线时间
795 小时
注册时间
2009-2-6
回帖
3910

开拓者贵宾

发表于 2014-6-8 22:24:09 | 显示全部楼层
xie7 发表于 2014-6-8 22:22
似乎有点明白了,这样做是不是还需要一个类似银行系统?还望指教

$game_party就是你的银行
Brandnew day, Brandnew Life
                             规 实在  中
暂为素材区版主,版其  琢磨
应援一下~
RPG制作大师授权素材推广计划
回复

使用道具 举报

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-6-4
回帖
15
 楼主| 发表于 2014-6-8 22:49:13 | 显示全部楼层
moy 发表于 2014-6-8 22:24
$game_party就是你的银行


额。。我糊涂了,我把我想要的都说一下吧,还加上我的思路

1. 一个npc来随机卖东西A,价格是东西A价格的正负30%,可能多或者少,我钱够就东西A加1到库里,钱减东西A正负30%后的价值。

2. 一个npc来随机买东西B,价格是东西B价格的正负30%,可能多或者少,我库里有东西B则减1,钱加B的那个随机价值。

我贴上我的代码  我怎么贴不上来?那就贴张图吧。 不要吐槽中间的恢复剂。。。我临时替代一下用的。

QQ截图20140608224652.png
回复

使用道具 举报

无节操

梦石
0
星屑
608
在线时间
795 小时
注册时间
2009-2-6
回帖
3910

开拓者贵宾

发表于 2014-6-8 23:04:20 | 显示全部楼层
本帖最后由 moy 于 2014-6-8 23:05 编辑
xie7 发表于 2014-6-8 22:49
额。。我糊涂了,我把我想要的都说一下吧,还加上我的思路

1. 一个npc来随机卖东西A,价格是东西A价格的 ...


Game_Party有这样的方法
[pre lang="ruby" line="1"]  #--------------------------------------------------------------------------
  # ● 判定是否持有某物品
  #     include_equip : 检索是否包括装备
  #--------------------------------------------------------------------------
  def has_item?(item, include_equip = false)
    return true if item_number(item) > 0
    return include_equip ? members_equip_include?(item) : false
  end[/pre]其中item就可以设置成你获取的那个
同样,如果获取物品数,可以使用这个
[pre lang="ruby" line="1"]
  #--------------------------------------------------------------------------
  # ● 获取物品的持有数
  #--------------------------------------------------------------------------
  def item_number(item)
    container = item_container(item.class)
    container ? container[item.id] || 0 : 0
  end[/pre]

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 认可答案

查看全部评分

Brandnew day, Brandnew Life
                             规 实在  中
暂为素材区版主,版其  琢磨
应援一下~
RPG制作大师授权素材推广计划
回复

使用道具 举报

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-6-4
回帖
15
 楼主| 发表于 2014-6-9 12:20:23 | 显示全部楼层
moy 发表于 2014-6-8 23:04
Game_Party有这样的方法
  #------------------------------------------------------------------------ ...

感谢感谢,似乎这样效率就很高了
回复

使用道具 举报

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-6-4
回帖
15
 楼主| 发表于 2014-6-9 17:40:20 | 显示全部楼层
moy 发表于 2014-6-8 23:04
Game_Party有这样的方法
  #------------------------------------------------------------------------ ...

抱歉连贴了,我想问问大神,这个不会用呀,,研究一天了也不知道把它放哪里……还望指点。
回复

使用道具 举报

无节操

梦石
0
星屑
608
在线时间
795 小时
注册时间
2009-2-6
回帖
3910

开拓者贵宾

发表于 2014-6-9 17:56:01 | 显示全部楼层
本帖最后由 moy 于 2014-6-9 17:57 编辑
xie7 发表于 2014-6-9 17:40
抱歉连贴了,我想问问大神,这个不会用呀,,研究一天了也不知道把它放哪里……还望指点。 ...


不是…不用放……你只要用就好,这就是默认脚本
  1. $game_party.item_number(item)
复制代码
在事件脚本里直接用,条件分歧第四页或是变量赋值底下都有。
像你这种自己找了item的,只要在事件脚本框里自己赋值就可以了。
比如
  1. $game_variables[30] = $game_party.item_number(item)
复制代码
这样接下来的条件分歧就只需要看30号变量就可以了。
Brandnew day, Brandnew Life
                             规 实在  中
暂为素材区版主,版其  琢磨
应援一下~
RPG制作大师授权素材推广计划
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部