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

Project1

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

[已经解决] 请问这个循环的问题在哪里?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
帖子
813

开拓者

跳转到指定楼层
1
发表于 2017-2-12 16:24:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 jianyulei 于 2017-2-12 16:38 编辑

为什么队伍人数越多最后得出的数的倍率就越高?1个人的时候计算得到的数是正常算法的3倍,2人是4倍,3人5倍。
RUBY 代码复制
  1. class Game_Battler < Game_BattlerBase
  2. $fangyu_shuzu = Array.new(3,0)
  3. alias fangyu_on_turn_end on_turn_end
  4.   def on_turn_end
  5.       fangyu_on_turn_end      
  6.       (0..2).each do |i|
  7.          if $game_party.members[i]
  8.            $fangyu_shuzu[i] += ($game_party.members[i].element_rate(27)*10).to_i
  9.          end
  10.       end
  11.   end
  12. end

尝试过其他写法,但都没用,唯有写进公共事件然后放到on_turn_end里面才正常

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

2
发表于 2017-2-12 17:02:04 | 只看该作者
因为队伍里每个角色都要执行一遍 Game_Battler#on_turn_end

点评

这么说来以前一直手动让人物的回合结束用的都是$game_actors[1].on_turn_end,居然给忘记了……  发表于 2017-2-12 17:33

评分

参与人数 2星屑 +220 收起 理由
RaidenInfinity + 200 认可答案
jianyulei + 20 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
644
在线时间
830 小时
注册时间
2016-7-24
帖子
649

开拓者

3
发表于 2017-2-12 17:12:45 | 只看该作者
順帶一提 因為敵人也要執行

所以你會看到多2是因為史萊姆兩隻吧(通靈)

点评

通灵师!现在加了判定self ==$game_actors[1] 之后就好了  发表于 2017-2-12 17:34

评分

参与人数 1星屑 +200 收起 理由
RaidenInfinity + 200 认可答案

查看全部评分

2016/07/17 加入RPG製作,勿忘初衷!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 05:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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