Project1

标题: 请问这段脚本怎么改成百分百成功率 [打印本页]

作者: qq595006041    时间: 2019-1-12 12:10
标题: 请问这段脚本怎么改成百分百成功率
  #--------------------------------------------------------------------------
  # X☆R: 装备拆解。
  #--------------------------------------------------------------------------
  def demolish
    if self.is_a?(X☆R_Weapon)
      materials = $data_weapons[@id].materials
    else
      materials = $data_armors[@id].materials
    end
    ma = materials.keys.clone
    if ma.size > 0
      n = 30 * ma.size
      until n <= 0
        id = ma[rand (ma.size)]
        if (rand 100) < n and id != nil
          $game_party.gain_item(id, 1)
          ma.delete(id)
        end
        n -= 30
      end
    end
    if @level >= 2
      n = @level / 2 * 10
      items = X☆R::Lup_Items.keys.clone
      until n <= 0
        if (rand 100) < n
          $game_party.gain_item(items[rand(items.size)], 1)
        end
        n -= 10
      end
    end
    if @gem != []
      n = 10 * gem_size
      until n <= 0
        id = @gem[rand (@gem.size)]
        if (rand 100) < n and id != nil
          $game_party.gain_item(id, 1)
          @gem.delete(id)
        end
        n -= 10
      end
    end
    if self.is_a?(X☆R_Weapon)
      $game_party.lose_weapon(@index)
    else
      $game_party.lose_armor(@index)
    end
  end
作者: chd114    时间: 2019-1-13 00:42
把 (rand 100) < n和相关的连接词全部去掉或者随便改个n==n之类的可以返回true的条件就行了
(rand 100)<n就是判断是否成功分解的部分
作者: hyrious    时间: 2019-1-13 20:59
RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # X☆R: 装备拆解。
  3.   #--------------------------------------------------------------------------
  4.   def demolish
  5.     if self.is_a?(X☆R_Weapon)
  6.       materials = $data_weapons[@id].materials
  7.     else
  8.       materials = $data_armors[@id].materials
  9.     end
  10.     ma = materials.keys.clone
  11.     if ma.size > 0
  12.       n = 30 * ma.size
  13.       until n <= 0
  14.         id = ma[rand (ma.size)]
  15.         # if (rand 100) < n and id != nil
  16.           $game_party.gain_item(id, 1)
  17.           ma.delete(id)
  18.         # end
  19.         n -= 30
  20.       end
  21.     end
  22.     if @level >= 2
  23.       n = @level / 2 * 10
  24.       items = X☆R::Lup_Items.keys.clone
  25.       until n <= 0
  26.         # if (rand 100) < n
  27.           $game_party.gain_item(items[rand(items.size)], 1)
  28.         # end
  29.         n -= 10
  30.       end
  31.     end
  32.     if @gem != []
  33.       n = 10 * gem_size
  34.       until n <= 0
  35.         id = @gem[rand (@gem.size)]
  36.         # if (rand 100) < n and id != nil
  37.           $game_party.gain_item(id, 1)
  38.           @gem.delete(id)
  39.         # end
  40.         n -= 10
  41.       end
  42.     end
  43.     if self.is_a?(X☆R_Weapon)
  44.       $game_party.lose_weapon(@index)
  45.     else
  46.       $game_party.lose_armor(@index)
  47.     end
  48.   end





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