Project1

标题: 如何排除已经获得的ID [打印本页]

作者: 黑米馒头    时间: 2024-3-22 11:26
标题: 如何排除已经获得的ID
RUBY 代码复制
  1. 弄了一个宠物合成的脚本,如何修改当成品数组里面的宠物ID全部在队伍和仓库里时,
  2. 就无法继续获得,如果队伍和仓库没有该ID的宠物就获得该宠物
  3.  
  4. 脚本1
  5. class Game_Alchemy
  6.   attr_accessor   :recipe_list
  7.   attr_accessor   :fail_id
  8.   def initialize
  9.     @recipe_list = []
  10.     main
  11.   end
  12.   def main   
  13.     材料A = [0,181]
  14.     材料B = [0,206]
  15.     成品  = [103, 104]
  16.     @recipe_list << [材料A, 材料B, 成品]
  17.   end  
  18. end
  19.  
  20. 脚本2
  21. def make_result
  22.   @alchemy = []
  23.   for i in 0...2
  24.     kind = 0
  25.     @alchemy[i] = [kind,@alchemy_window.stuff[i].id]
  26.   end
  27.   @list = $game_alchemy.recipe_list
  28.   for i in 0...@list.size
  29.     if @alchemy[0] == @list[i][0] and @alchemy[1] == @list[i][1]
  30.  
  31.       # 获得炼妖宠物,从成品数组中随机选择一个
  32.       成品索引 = rand(@list[i][2].size)
  33.       @result = $data_actors[@list[i][2][成品索引]]
  34.  
  35.       # 检查队伍和仓库是否包含该宠物ID
  36.       if $game_actors[$game_variables[1]].kds_baby.include?(@result.id) ||
  37.          $game_party.actors2.include?($game_actors[@result.id])
  38.          p "无法继续获得宠物"
  39.       # 如果没有该宠物
  40.       else
  41.          p "获得宠物"
  42.          # 添加进队伍
  43.          switch_baby(@result.id)
  44.       end
  45.     end
  46.   end
  47. end

作者: 黑米馒头    时间: 2024-4-6 09:58
自行解决了
作者: 金芒芒    时间: 2024-4-6 11:13
黑米馒头 发表于 2024-4-6 09:58
自行解决了

分享一下大神





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