Project1

标题: 请教这段脚本是什么意思? [打印本页]

作者: 幻耶    时间: 2011-9-2 12:53
标题: 请教这段脚本是什么意思?
是战斗换人脚本中的一小段

  # 设置战斗的角色
  def set_actor_to_battle
    @actors2 = []
    @actors.each do |actor|
      @actors2.push(actor)
    end
    @actors = []
    dead_actor = []
    @actors2.each do |actor|
      if !actor.dead?
        @actors.push(actor)
      else
        dead_actor.push(actor)
      end
      break if @actors.size == MaxBattlerSize
    end
    if @actors.size < MaxBattlerSize
      for actor in dead_actor
        @actors.push(actor)
        break if @actors.size == MaxBattlerSize
      end
    end
  enddsu_plus_rewardpost_czw
作者: fux2    时间: 2011-9-2 13:10
代码请用代码功能发,回帖框上方有一个"<>"形状的按钮
  1.   # 设置战斗的角色
  2.    def set_actor_to_battle
  3.      @actors2 = []                        #初始化新的队伍数组
  4.      @actors.each do |actor|          #遍历原有队伍数组
  5.        @actors2.push(actor)            #相当于@[email protected],这里是浪费效率
  6.      end
  7.      @actors = []                          #清空原有数组
  8.      dead_actor = []                      #初始化死亡的角色数组,以便记录
  9.      @actors2.each do |actor|
  10.        if !actor.dead?
  11.          @actors.push(actor)            #没死的角色留下
  12.        else
  13.          dead_actor.push(actor)        #记录挂掉的角色
  14.        end
  15.        break if @actors.size == MaxBattlerSize        #如果队伍人数等于战斗人数就跳出循环
  16.      end
  17.      if @actors.size < MaxBattlerSize
  18.        for actor in dead_actor
  19.          @actors.push(actor)                           #同上
  20.          break if @actors.size == MaxBattlerSize
  21.        end
  22.      end
  23.    end
复制代码

作者: 幻耶    时间: 2011-9-2 13:18
fux2 发表于 2011-9-2 13:10
代码请用代码功能发,回帖框上方有一个""形状的按钮

不知这个actors2是指参加战斗的队伍还是替补的队伍?
作者: fux2    时间: 2011-9-2 13:32
幻耶 发表于 2011-9-2 13:18
不知这个actors2是指参加战斗的队伍还是替补的队伍?

临时建立的数组,中转作用.




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