查看: 2453|回复: 2

[已经解决] 判断队伍是否携带某特定名称的武器,并提取其编号

[复制链接]
梦石
0
星屑
50
在线时间
130 小时
注册时间
2008-8-12
回帖
117
发表于 2015-5-21 14:07:59 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 兔毛鹿 于 2015-5-21 14:12 编辑

比如,判断队伍中是否携带名为“密斯利尔剑”的武器,并提取其数据库编号,如果携带有多个同名的武器,就提取数据库编号最大的那一个的编号。(假设数据库中存在同名但不同编号的武器)

在事件中用脚本判断,应该怎么做?
Tomorrow
梦石
0
星屑
9557
在线时间
5074 小时
注册时间
2013-6-21
回帖
3459

开拓者贵宾剧作品鉴家

发表于 2015-5-21 15:02:04 | 显示全部楼层
本帖最后由 RyanBern 于 2015-5-21 16:00 编辑

[pre lang="Ruby"]arr = $data_weapons.select\
{|weapon| $game_party.weapon_number(weapon.id) > 0 &&\
weapon.name == "密斯利尔剑"}
$t = arr.empty? ? 0 : arr[-1].id[/pre]
事件脚本过长请用'\'符号连行。
执行后全局变量$t就是你要的ID(如果不存在的话$t的值为-1),之后利用条件分歧判断即可,未测试。

点评

我在脚本中打的是&&,但是脚本框里却只显示一个&,很奇怪  发表于 2015-5-21 15:58
回复

使用道具 举报

梦石
0
星屑
50
在线时间
130 小时
注册时间
2008-8-12
回帖
117
 楼主| 发表于 2015-5-21 15:48:10 | 显示全部楼层
RyanBern 发表于 2015-5-21 15:02
arr = $data_weapons.select\
{|weapon| $game_party.weapon_number(weapon.id) > 0 &&\
weapon.name == " ...

我写成下图这样,但是执行脚本时出错:SyntaxError

222.JPG

点评

抱歉,一个笔误$t = arr.empty? ? -1 : arr[-1].id,还有一个地方是&&,不是&  发表于 2015-5-21 15:55
Tomorrow
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部