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

Project1

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

[已经解决] 【脚本修改】武器限定技能

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1230
在线时间
254 小时
注册时间
2017-2-18
帖子
99

开拓者

跳转到指定楼层
1
发表于 2017-5-14 15:35:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
之前求了个武器限定技能的脚本,在这里感谢一下芯☆淡茹水~
但是与使用的随机属性、装备强化发生了冲突,所以求修改一下,将它的判定方式由通过名称判定改成通过备注判定
RUBY 代码复制
  1. =begin
  2. *黯淡的流星所加注释:该脚本的使用方法
  3. 在武器的名称(注意是名称!)后写上 ,数字就可以将此武器定义为x类型(X为填写的数字)
  4. 例如:长剑,1 就是说,此武器的名字是“长剑”,类型是1
  5.  
  6. 在技能的名称后写上 ,数字就可以这个技能定义为x类型,只有在装备了相同类型的武器时
  7. 才能使用,例如:重斩,1 就是说技能“重斩”只有在装备1类型武器时才能使用
  8.  
  9. 当武器名称后没有填写时,默认该武器类型为0,在装备该武器时无法使用任何定义了类型
  10. 的技能
  11.  
  12. 当技能名称后没有填写时,默认该技能类型为0,在装备任何武器时都可以使用
  13.  
  14. 注意:逗号用半角!用半角!用半角!重要的事情说三遍
  15. =end
  16. #==============================================================================
  17. module RPG
  18.   class Skill < UsableItem
  19.     def name
  20.       return @name.split(/,/)[0] != nil ? @name.split(/,/)[0] : ""
  21.     end
  22.     def weapon_limit_id
  23.       return @name.split(/,/)[1] != nil ? @name.split(/,/)[1].to_i : 0
  24.     end
  25.   end
  26.   class Weapon < BaseItem
  27.     def name
  28.       return @name.split(/,/)[0] != nil ? @name.split(/,/)[0] : ""
  29.     end
  30.     def kind
  31.       return @name.split(/,/)[1] != nil ? @name.split(/,/)[1].to_i : 0
  32.     end
  33.   end
  34. end
  35. #--------------------------------------------------------------------------
  36. class Game_Actor < Game_Battler
  37.   def skill_can_use?(skill)
  38.     return false unless skill_learn?(skill)
  39.     return false if weapon_limit(skill)
  40.     return super
  41.   end
  42.   def weapon_limit(skill)
  43.     return true unless skill.is_a?(RPG::Skill)
  44.     return false if skill.weapon_limit_id == 0
  45.     data = weapons.find{|w| next if w.nil?;w.kind == skill.weapon_limit_id}
  46.     return data.nil?
  47.   end
  48. end
  49. #==============================================================================

Lv5.捕梦者

梦石
0
星屑
31950
在线时间
5081 小时
注册时间
2012-11-19
帖子
4877

开拓者

2
发表于 2017-5-14 17:26:02 | 只看该作者
  1. #==============================================================================
  2. module RPG
  3.   class Skill < UsableItem
  4.     def weapon_limit_id
  5.       return 0 unless @note.include?("Need_weapon")
  6.       @note.gsub!(/\<Need_weapon (\d+)\>/){return $1.to_i}
  7.     end
  8.   end
  9.   class Weapon < BaseItem
  10.     def kind
  11.       return 0 unless @note.include?("Kind")
  12.       @note.gsub!(/\<Kind (\d+)\>/){return $1.to_i}
  13.     end
  14.   end
  15. end
  16. #--------------------------------------------------------------------------
  17. class Game_Actor < Game_Battler
  18.   def skill_can_use?(skill)
  19.     return false unless skill_learn?(skill)
  20.     return false if weapon_limit(skill)
  21.     return super
  22.   end
  23.   def weapon_limit(skill)
  24.     return true unless skill.is_a?(RPG::Skill)
  25.     return false if skill.weapon_limit_id == 0
  26.     data = weapons.find{|w| next if w.nil?;w.kind == skill.weapon_limit_id}
  27.     return data.nil?
  28.   end
  29. end
  30. #==============================================================================
复制代码


技能加武器种类限制,在备注写:<Need_weapon 种类>  比如: <Need_weapon 2>  <Need_weapon 10>
Need_weapon 后面留一空格再写数字。
武器添加种类,在备注写: <Kind 种类>  ,格式同上。
这个没测试,不知道能不能成功

评分

参与人数 1星屑 +100 收起 理由
怪蜀黍 + 100 认可答案

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
69 小时
注册时间
2017-1-28
帖子
79
3
发表于 2017-5-14 17:33:54 | 只看该作者
亲 可以修改武器的大小吗? 急!

点评

什么意思  发表于 2017-5-20 15:15
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1230
在线时间
254 小时
注册时间
2017-2-18
帖子
99

开拓者

4
 楼主| 发表于 2017-5-20 15:57:37 | 只看该作者
芯☆淡茹水 发表于 2017-5-14 17:26
技能加武器种类限制,在备注写:  比如:   
Need_weapon 后面留一空格再写数字。
武器添加种类,在备注写 ...

不行……没有用,即便没有装备脚本中定义类型的武器,技能照样可以正常使用
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-28 07:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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