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

Project1

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

[已经解决] 请问BOUNS脚本中的触发几率如何设置

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
37 小时
注册时间
2009-10-4
帖子
45
跳转到指定楼层
1
发表于 2012-6-17 11:08:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题 行动每次都触发BOUNS的奖励 请问如何才能设置触发几率?
  1. #---------------------------------------------------------------------
  2. # BONUS系统 BY FantasyDR 面粉
  3. class Scene_Battle
  4. alias bonus_Scene_Battle_update_phase4_step1 update_phase4_step1
  5. def update_phase4_step1
  6.    if 1  # 填写Bonus触发条件,这里是一直触发
  7.    
  8.      sid = 92 + rand(1)   # 产生Bonus技能的随机ID,这里是随机1~5号
  9.       
  10.      if  @active_battler != nil
  11.              if@active_battler.hp > 0 #hys修改部分
  12.         
  13.    # 添加标示,Bonus释放则不继续后面的步骤,释放完毕则继续
  14.        @bonus_over = {} if @bonus_over == nil
  15.        if @bonus_over[@active_battler.index]
  16.          @bonus_over.delete(@active_battler.index)
  17.        else
  18.          @bonus_over[@active_battler.index] = true
  19.           if sid == 91
  20.             $game_party.gain_gold(rand( 1900 )+100)
  21.             #——声效,可以自己改
  22.             Audio.se_play("Audio/SE/"+"056-Right02",80,100)
  23.             end
  24.           if sid == 92
  25.            recover_sp =(@active_battler.maxsp / 10)
  26.            @active_battler.sp += recover_sp
  27.            @active_battler.damage = recover_sp
  28.            @active_battler.damage_pop = true
  29.           end
  30.             # 如果有技能不能表述的额外效果,代码添加在这里,比如1号技能
  31.          # if sid == 1
  32.           # recover_sp =(@active_battler.maxsp / 10)
  33.           # @active_battler.sp += recover_sp
  34.           # @active_battler.damage = recover_sp
  35.           # @active_battler.damage_pop = true
  36.          # end
  37.       # 产生技能使用效果
  38.          @active_battler.skill_effect(@active_battler,$data_skills[sid])
  39.       # Bonus说明文字
  40. @help_window.set_text(@active_battler.name + " 获得了 "+$data_skills[sid].name, 1)
  41.          
  42.          # 刷新状态窗口
  43.          @status_window.refresh  
  44.          # 设置动画 ID
  45.          @animation1_id = $data_skills[sid].animation1_id
  46.          @animation2_id = $data_skills[sid].animation2_id
  47.          if @animation1_id == 0
  48.            @active_battler.white_flash = true
  49.          else
  50.            @active_battler.animation_id = @animation1_id
  51.            @active_battler.animation_hit = true
  52.          end
  53.          @active_battler.animation_id = @animation2_id
  54.          @active_battler.animation_hit = (@active_battler.damage != "Miss")
  55.          @wait_count = 20
  56.          @active_battler.damage_pop = false
  57.          return
  58.        end
  59.       end
  60.      end
  61.    end
  62.    # 调用原有的方法
  63.    bonus_Scene_Battle_update_phase4_step1
  64. end
  65. end
  66. #-------------------------------------------------------------------------
复制代码

Lv4.逐梦者

梦石
8
星屑
2794
在线时间
1610 小时
注册时间
2010-10-22
帖子
1059

极短25获奖

2
发表于 2012-6-17 11:47:30 | 只看该作者
修改成这样:
  1. def update_phase4_step1
  2. #--------------------------------------------------------

  3. m = rand(5)#随机数0~4
  4.    if m<= 0 #20%几率
  5. #--------------------------------------------------------
  6.      sid = 92 + rand(1)   # 产生Bonus技能的随机ID,这里是随机1~5号
  7.      if  @active_battler != nil
  8.              if@active_battler.hp > 0 #hys修改部分
复制代码
【2022.06.03】原本以为已经不可能再找回来的东西重新找回来了,原本一直念念不忘的坑终于再一次拿起铲子了。一别竟近10年,你好,我的世界我的梦。
【不可阻挡】异元-地劫黎明
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
45
在线时间
0 小时
注册时间
2012-6-18
帖子
66
受到警告 3
发表于 2012-6-18 01:17:25 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-30 06:40

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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