设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2866|回复: 13
打印 上一主题 下一主题

[有事请教] 增减物品可以为变量吗?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
189
在线时间
37 小时
注册时间
2011-4-22
帖子
17
跳转到指定楼层
1
发表于 2017-11-1 20:52:05 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
这果然是个卧虎藏龙的地方,我又来请教问题啦。
就是我想实现个,柜台的功能:
1. 点击柜台 ->打开道具栏,选择物品 (可以用“物品选择处理"来实现,物品ID存入变量
2.柜台显示物品图标
3.背包物品减少一个


那么问题来了,RPGmaker里面的增减物品,只能选定某个物品,不能为变量
这可咋办啊?




Lv3.寻梦者

梦石
0
星屑
2727
在线时间
210 小时
注册时间
2017-9-28
帖子
283
2
发表于 2017-11-1 20:57:05 | 只看该作者
不知道你想怎么样,是不是事件指令-变量操作-游戏数据-物品持有数
说错了别怪我

点评

我想实现的是,获得 "变量001" 号的物品一个,而不是获得指定的物品,就是这个意思呢  发表于 2017-11-1 22:13
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

3
发表于 2017-11-1 21:15:05 | 只看该作者

$gameParty.gainItem($dataItems[id], 数量);  #获得物品
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7422
在线时间
948 小时
注册时间
2017-9-27
帖子
583
4
发表于 2017-11-1 21:18:55 | 只看该作者
用脚本啊,得物品 $gameParty.gainItem($dataItems[id], num);
失物品 $gameParty.loseItem($dataItems[id], num);

武器、防具类似,把$dataItems换成$dataWeapons/$dataArmors就行了。
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
189
在线时间
37 小时
注册时间
2011-4-22
帖子
17
5
 楼主| 发表于 2017-11-1 21:54:21 | 只看该作者
本帖最后由 nevin999 于 2017-11-1 21:55 编辑
梦想家大魔王 发表于 2017-11-1 21:18
用脚本啊,得物品 $gameParty.gainItem($dataItems, num);
失物品 $gameParty.loseItem($dataItems, num);
...

先谢谢两位大佬 @梦想家大魔王  @yang1zhi

原谅我这个小白,代码中的ID是存物品的变量吗?是不是像这样?可是出错了呢







点评

$gameParty.gainItem($dataItems[3], 1) 这句意思是获得3号物品一个,对吧 我想实现的是,获得 "变量001" 号物品一个,请问这个用什么语句啊?  发表于 2017-11-1 22:09
存物品的变量大概是把$dataItems[id]整个给存下来了。所以你可以用$gameVariables._data[id].id来得到ID,这是变量  发表于 2017-11-1 21:58
不是,是数据库里面的数字ID序列。每个武器都有一个序列ID的  发表于 2017-11-1 21:55
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
189
在线时间
37 小时
注册时间
2011-4-22
帖子
17
6
 楼主| 发表于 2017-11-1 22:10:43 | 只看该作者
yang1zhi 发表于 2017-11-1 21:15
$gameParty.gainItem($dataItems, 数量);  #获得物品

$gameParty.gainItem($dataItems[3], 1) 这句意思是获得3号物品一个,对吧
我想实现的是,获得 "变量001" 号物品一个,请问这个用什么语句啊?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
620
在线时间
158 小时
注册时间
2009-7-21
帖子
60

开拓者

7
发表于 2017-11-1 22:12:10 | 只看该作者
$gameParty.gainItem($dataItems[$gameVariables._data[1]], num);
num为增加道具的数量(可以为负数)
$gameVariables._data[1] 为变量1的值。如果想要使用其他变量,请修改中间的数字
思路才是大脑
方法只是手脚
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

8
发表于 2017-11-1 22:13:54 | 只看该作者
本帖最后由 yang1zhi 于 2017-11-1 22:15 编辑
nevin999 发表于 2017-11-1 21:54
先谢谢两位大佬 @梦想家大魔王  @yang1zhi

原谅我这个小白,代码中的ID是存物品的变量吗?是不是像这样 ...

首先,你的1号变量里面要是个ID,也就是是数字3。才可以是
$gameParty.gainItem($dataItems[$gameVariables._data[1]], 1)
不然就要先得出ID才行。
假如这个变量里面是道具本身,也就是$dataItems[3]
那就要 id = $dataItems[3].id 或者 $gameVariables._data[1].id
这样id 就是3了
就可以$gameParty.gainItem($dataItems[id], 1)
假如这个变量里面不是你想要的道具,或者ID。那就要先找到你要的道具。
比如使用事件的道具选择。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
189
在线时间
37 小时
注册时间
2011-4-22
帖子
17
9
 楼主| 发表于 2017-11-1 22:18:21 | 只看该作者
a02821145 发表于 2017-11-1 22:12
$gameParty.gainItem($dataItems[$gameVariables._data[1]], num);
num为增加道具的数量(可以为负数)
$ga ...

大佬!厉害,就是这句代码!
再问下,显示这个物品的图标在地图(x,y)位置,有没有代码?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
620
在线时间
158 小时
注册时间
2009-7-21
帖子
60

开拓者

10
发表于 2017-11-2 17:32:48 | 只看该作者
你这个问题不是已经在其他帖子问过了么
那个插件使用也很简单,稍微谷歌一下注释对比原作者的使用示意图就行。
那个方法已经是挺简单的了,不会有一两行代码就能搞定这件事情的方式。
思路才是大脑
方法只是手脚
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-11 04:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表