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

Project1

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

[已经解决] 我是脚本盲在学,有没有办法让技能需要什么武器才能用

[复制链接]

Lv1.梦旅人

梦石
0
星屑
153
在线时间
41 小时
注册时间
2017-2-11
帖子
18
跳转到指定楼层
1
发表于 2017-3-4 13:21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我是脚本盲在学,想问下有没有办法让技能需要什么武器才能用的办法呢?

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

2
发表于 2017-3-4 13:30:46 | 只看该作者
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
153
在线时间
41 小时
注册时间
2017-2-11
帖子
18
3
 楼主| 发表于 2017-3-4 13:39:07 | 只看该作者
十分感谢~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
153
在线时间
41 小时
注册时间
2017-2-11
帖子
18
4
 楼主| 发表于 2017-3-4 13:40:13 | 只看该作者
不过好像这个是删除技能的,有没有那种不删除的呢
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23999
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

5
发表于 2017-3-4 14:08:54 | 只看该作者
把你刚才发的VX脚本copy了一下:
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Game_Battler
  3. #------------------------------------------------------------------------------
  4. #  处理战斗者的类。这个类作为 Game_Actor 类与 Game_Enemy 类的
  5. # 超级类来使用。
  6. #==============================================================================
  7.   SW_SET = [17,18,19,20,21,22,23,24]    # 此处设定武器和技能关联的属性id
  8. #==============================================================================
  9. class Game_Battler
  10.   #--------------------------------------------------------------------------
  11.   # ● 判断是否可以使用技能
  12.   #     skill : 技能
  13.   #     self.weapons : 武器id的数组
  14.   #--------------------------------------------------------------------------
  15.   alias _SkillWeapon_skill_can_use? skill_can_use?
  16.   def skill_can_use?(skill_id)
  17.     if self.is_a?(Game_Actor)
  18.       $data_weapons[0] = RPG::Weapon.new
  19.       $data_weapons[0].element_set =[]
  20.       sw_boolean = false # 判断武器和技能关联
  21.       s = SW_SET & $data_skills[skill_id].element_set
  22.       if s.empty?
  23.         sw_boolean = true
  24.       else
  25.         s2 = s & $data_weapons[self.weapon_id].element_set
  26.         if !s2.empty?
  27.           sw_boolean = true
  28.         end
  29.       end
  30.       $data_weapons[0] = nil
  31.       return false if sw_boolean == false
  32.     end
  33.     return _SkillWeapon_skill_can_use?(skill_id)
  34.   end
  35. end

熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

6
发表于 2017-3-4 14:30:52 | 只看该作者
随手写了一个。
功能:特定的技能需要相同属性的武器才可以释放,否则不能使用。
用法:新建一个属性,命名为【需要武器】,属性的ID需要跟脚本里的ID设置绑定(见脚本)。设置需要武器才能使用的技能的时候,首先将此技能附加【需要武器】的属性,然后再勾选实际的技能属性(例如【斧头】),所需要的武器必须有同样的属性才可以使用。
RUBY 代码复制
  1. STATE_NEED_WEAPON = 20 # 【需要武器】状态绑定的 ID
  2. class Game_Actor < Game_Battler
  3.   def skill_can_use?(skill_id)
  4.     skill = $data_skills[skill_id]
  5.     weapon = $data_weapons[weapon_id]
  6.     if skill.element_set.include?(STATE_NEED_WEAPON)
  7.       return false if weapon.nil? || (skill.element_set & weapon.element_set).empty?
  8.     end
  9.     super
  10.   end
  11. end
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
153
在线时间
41 小时
注册时间
2017-2-11
帖子
18
7
 楼主| 发表于 2017-3-4 14:42:22 | 只看该作者
好的谢谢2位,我去试试~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
153
在线时间
41 小时
注册时间
2017-2-11
帖子
18
8
 楼主| 发表于 2017-3-4 14:45:37 | 只看该作者
版主大大~你设定的那个是直接用在我发的这脚本基础上么~还是怎么?貌似是只能绑定一个ID?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
153
在线时间
41 小时
注册时间
2017-2-11
帖子
18
9
 楼主| 发表于 2017-3-4 14:56:47 | 只看该作者
我想用的是在XP上的

点评

试一下我的  发表于 2017-3-4 18:52
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
52 小时
注册时间
2017-1-12
帖子
192
10
发表于 2017-3-4 15:05:35 | 只看该作者
其实完全能用事件实现的...
我可以告诉你原理...

评分

参与人数 1星屑 -1 收起 理由
RyanBern -1 那你就告诉呀

查看全部评分

别问我是谁! 我只是一个不为人知的小白而已..
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-1 13:14

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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