Project1

标题: 问个问题,下面这个用脚本怎么表达啊 [打印本页]

作者: j1747532399l    时间: 2015-7-5 18:44
标题: 问个问题,下面这个用脚本怎么表达啊
角色a的 魔力 等于 A; 敌人b的 魔力 等于 B
魔力差 等于 A 减 B
如果 魔力差 大于等于 100
  角色a 对 敌人b 使用技能 有12/16的几率成功
结束
如果 魔力差 大于等于 50
  角色a 对 敌人b 使用技能 有4/16的几率成功
结束


作者: j1747532399l    时间: 2015-7-5 18:45
其实我就是不知道12/16和4/16的几率成功 怎么写
作者: 九幽鬼少    时间: 2015-7-5 19:00
最简单的方法  
$变量 = rand(15)  
if $变量 == 0 and $变量 == 1 and $变量 == 2 and $变量 == 3
   #4/16的部分
else
   #12/16的部分
end

作者: j1747532399l    时间: 2015-7-5 20:21
九幽鬼少 发表于 2015-7-5 19:00
最简单的方法  
$变量 = rand(15)  
if $变量 == 0 and $变量 == 1 and $变量 == 2 and $变量 == 3

这个想法不错
作者: RyanBern    时间: 2015-7-7 10:28
仅供参考
RUBY 代码复制
  1. int_diff = a.int - b.int
  2. success = false
  3. if int_diff >= 100
  4.   success = rand(16) < 12
  5. elsif int_diff >= 50
  6.   success = rand(16) < 4
  7. end
  8. if success
  9.   # do your job
  10. end

作者: taroxd    时间: 2015-7-7 10:44
本帖最后由 taroxd 于 2015-7-8 19:22 编辑
RyanBern 发表于 2015-7-7 10:28
仅供参考
int_diff = a.int - b.int
success = false


我就来卖个萌

RUBY 代码复制
  1. int_diff = a.int - b.int
  2. (int_diff >= 100 ? rand(16) < 12 : int_diff >= 50 && rand(16) < 4) && do_your_job

作者: j1747532399l    时间: 2015-7-7 17:34
  int差 = $game_party.actors[0].int - $game_troop.enemies[0].int
        if   int差 >= 100
            if rand(16) < 12
            ### 成功
            else
            ### 失败
            end
        elsif int差 >= 50
            if rand(16) < 4
            ### 成功
            else
            ###失败
            end
      else
     ###失败
        end
应该就是这样了吧

作者: 冷峻逸    时间: 2015-7-8 17:12
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1