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

Project1

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

[已经解决] 防具种类关联技能

[复制链接]

Lv1.梦旅人

梦石
0
星屑
99
在线时间
900 小时
注册时间
2012-11-13
帖子
893
跳转到指定楼层
1
发表于 2013-10-12 12:30:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 3106345123 于 2013-10-12 16:35 编辑

VA实现了 装备了某种或某几种中的一种武器时才能使用某技能,

现在我想让防具也实现此功能。

装备了某种或某几种中的一种防具时才能使用某技能

点评

不要自己改標簽喵~  发表于 2013-10-13 02:25
废弃

Lv3.寻梦者

梦石
0
星屑
3288
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
2
发表于 2013-10-12 12:43:32 | 只看该作者
武器你是怎么实现的?脚本还是什么?如果是脚本就要改脚本,如果是数据库,你在数据库里怎么设定武器的,也可以设定防具

点评

数据库里可以设定武器,无法设定防具。  发表于 2013-10-12 12:50
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3288
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
3
发表于 2013-10-12 14:20:38 | 只看该作者
如果你想这样改,涉及到脚本了,最近比较忙,没什么时间,你@下其他人吧,不是很难改,在备注栏里加判断就可以了
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21484
在线时间
9389 小时
注册时间
2012-6-19
帖子
7114

开拓者短篇九导演组冠军

4
发表于 2013-10-12 14:59:51 | 只看该作者
先加入这个脚本
http://rpg.blue/thread-99474-1-1.html

然后在那个脚本以下的位置添加这个脚本
  1. class Game_Actor < Game_Battler  
  2.   def skill_wtype_ok?(skill)
  3.     wtype_id1 = skill.required_wtype_id1
  4.     wtype_id2 = skill.required_wtype_id2
  5.     atype_id1 = $data_skills[skill.id].read_note('ar1')
  6.     atype_id2 = skill.read_note('ar2')
  7.     if wtype_id1 == 0 && wtype_id2 == 0
  8.       return true if atype_id1 == nil && atype_id2 == nil
  9.       return true if atype_id1 > 0 && atype_equipped?(atype_id1)
  10.       return true if atype_id2 > 0 && atype_equipped?(atype_id2)
  11.     else   
  12.       return true if wtype_id1 > 0 && wtype_equipped?(wtype_id1)
  13.       return true if wtype_id2 > 0 && wtype_equipped?(wtype_id2)
  14.     end
  15.     return false
  16.   end  
  17.   def atype_equipped?(atype_id)
  18.     armors.any? {|armor| armor.atype_id == atype_id }
  19.   end  
  20. end
复制代码
之后在技能的备注栏填入
  1. ar1 = 1
  2. ar2 = 2
复制代码
等号后面写上你防具的ID即可

点评

谢谢。  发表于 2013-10-12 16:44

评分

参与人数 2星屑 +184 收起 理由
熊喵酱 + 180 认可答案
3106345123 + 4 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3288
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
5
发表于 2013-10-12 15:16:12 | 只看该作者
啊啊啊啊啊喵呜喵5我刚想说我无聊了可以帮弄了,结果你却抢先了,不管了,我的脚本没那么复杂,就那么一个。
  1. class Game_Actor < Game_Battler  
  2.   #--------------------------------------------------------------------------
  3.   # ● 是否装备技能所需要的所有必要武器装备
  4.   #--------------------------------------------------------------------------
  5.   def skill_wtype_ok?(skill)
  6.     #技能使用收到防具的限制
  7.     #使用方法:在技能的备注栏里加入<atype i>即可
  8.     #其中i代表收到限制的防具类型(参照数据库-用语-防具类型),为0或不填时代表不限制
  9.     #例如填写<atype 6>则代表在没有装备大盾类防具时,无法使用该技能。
  10.     #目前只做了限制一种防具
  11.     n = skill.note
  12.     c = /<atype (\d+?)>/i =~ n ? $1.to_i : 0
  13.     ###################
  14.     wtype_id1 = skill.required_wtype_id1
  15.     wtype_id2 = skill.required_wtype_id2
  16.     return true if wtype_id1 == 0 && wtype_id2 == 0 && c == 0
  17.     return true if wtype_id1 > 0 && wtype_equipped?(wtype_id1)
  18.     return true if wtype_id2 > 0 && wtype_equipped?(wtype_id2)
  19.     return true if c > 0 && atype_equipped?(c)
  20.     return false
  21.   end
  22.   #--------------------------------------------------------------------------
  23.   # ● 是否装备着特定类型的防具装备
  24.   #--------------------------------------------------------------------------
  25.   def atype_equipped?(atype_id)
  26.     armors.any? {|armor| armor.atype_id == atype_id }
  27.   end
  28. end
复制代码

点评

谢谢。  发表于 2013-10-12 16:44
其实本质上都一样,有时间的话干脆做成防具一个数组、武器一个数组的效果脚本的实用性会大大提高  发表于 2013-10-12 15:35

评分

参与人数 2星屑 +180 收起 理由
熊喵酱 + 176 认可答案
3106345123 + 4 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3288
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
6
发表于 2013-10-12 15:42:26 | 只看该作者
是呢,可惜最近忙,这个还是看他简单顺手写的。@喵呜喵5
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-30 19:39

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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