查看: 2481|回复: 5

[已经解决] 想要一个可以使武器和技能可以触发公共事件的脚本

[复制链接]
梦石
0
星屑
60
在线时间
59 小时
注册时间
2015-7-6
回帖
64
发表于 2015-7-7 18:22:56 | 显示全部楼层 |阅读模式

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

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

×
求大神赐教,使武器攻击时有几率触发公共事件,以及使用技能有几率触发公共事件

点评

game_battler来着?没记错的话里面能直接加,但是一次只能触发一个公共事件  发表于 2015-7-7 18:34
梦石
0
星屑
702
在线时间
326 小时
注册时间
2013-5-31
回帖
67
发表于 2015-7-7 20:35:37 | 显示全部楼层
版本差异 我这个就忽略不计了,
思路如下:
攻击时 应用效果
随机数判定
返回true就执行 否则什么都不干。

全局搜索 应用效果 就能找到相应的方法了。
回复

使用道具 举报

梦石
0
星屑
60
在线时间
59 小时
注册时间
2015-7-6
回帖
64
 楼主| 发表于 2015-7-7 20:39:16 | 显示全部楼层
橙光 发表于 2015-7-7 20:35
版本差异 我这个就忽略不计了,
思路如下:
攻击时 应用效果

QAQ我还是先去学脚本了
回复

使用道具 举报

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2015-7-12 14:37:39 | 显示全部楼层
关于技能那个,可以把那个“一定几率”写在公共事件里。

也就是 如果随机数(x..y)小于 z
  公共事件本体
分支结束

至于武器嘛, http://taroxd.github.io/rgss/  看完规约和说明之后找「普通攻防技能的扩展」,之后同技能

点评

憋出来了,不过还是对XX无效,然而附加状态还是附加上去了,这种讯息问题……我靠。我还是留着明天装逼算了。  发表于 2015-7-12 16:08

评分

参与人数 1星屑 +1 收起 理由
冷峻逸 + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
702
在线时间
326 小时
注册时间
2013-5-31
回帖
67
发表于 2015-7-12 16:32:11 | 显示全部楼层
本帖最后由 橙光 于 2015-7-12 16:36 编辑
  1. #注释:在使用的该技能的备注栏写上<发动率 x 公共事件Id y>
  2. #x代表几率,值为0~100,y代表要执行的公共事件的id。


  3. class RPG::Skill
  4.   def event_r
  5.     n = 0
  6.     /<发动率\s*(\d+)\s*公共事件Id\s*(\d+)>/ =~ note ? n = $1.to_i : 0
  7.     n = [[n,0].max,100].min
  8.   end
  9.   def event_id
  10.     /<发动率\s*(\d+)\s*公共事件Id\s*(\d+)>/ =~ note ? $2.to_i : 0
  11.   end
  12. end
  13. class Game_Battler
  14.   def item_apply(user, item)
  15.     @result.clear
  16.     @result.used = item_test(user, item)
  17.     @result.missed = (@result.used && rand >= item_hit(user, item))
  18.     @result.evaded = (!@result.missed && rand < item_eva(user, item))
  19.     if @result.hit?
  20.       unless item.damage.none?
  21.         @result.critical = (rand < item_cri(user, item))
  22.         make_damage_value(user, item)
  23.         execute_damage(user)
  24.       end
  25.       item.effects.each {|effect| item_effect_apply(user, item, effect) }
  26.       item_user_effect(user, item)
  27.     end
  28.     if item.is_a?(RPG::Skill)
  29.       if (rand()*100).to_i <= item.event_r
  30.         $game_temp.reserve_common_event(item.event_id)
  31.       end
  32.     end
  33.   end
  34. end
复制代码
回复

使用道具 举报

梦石
0
星屑
2019
在线时间
940 小时
注册时间
2015-10-26
回帖
293

开拓者

发表于 2015-11-7 18:38:59 | 显示全部楼层
如果想要换成武器。。。怎么改呢

点评

请不要挖坟 有问题请重新开贴提问,谢谢  发表于 2015-11-7 18:54
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部