Project1

标题: 随机遇敌 [打印本页]

作者: 747633681    时间: 2013-8-16 18:09
标题: 随机遇敌
如何实现在野外随机遇敌,不是设置多个敌群的, 就是随机遇到的敌人数量种类都是随机出现的。[qq]747633681[/qq]
作者: 布里蓝    时间: 2013-8-17 09:54
本来就是随机的啊,多设置几个敌群呗
作者: 绿坝    时间: 2013-8-17 10:24
多设置几个群组,这种功能用脚本太杀鸡用牛刀了。
作者: 747633681    时间: 2013-8-17 18:39
想要随机遇敌 是随机 一个敌群里面种类和个数都是随机的 这设置敌群要设置到什么时候
作者: 747633681    时间: 2013-8-18 09:27
  1. #==============================================================================
  2. # ★ RGSS3_ランダムトループ Ver1.1
  3. #==============================================================================
  4. =begin

  5. 作者:tomoaky
  6. webサイト:ひきも記 (http://hikimoki.sakura.ne.jp/)

  7. 指定したトループの中身(出現エネミー)をランダムに変更します、
  8. どんな敵が出現するか分からないおまけイベントバトルなどにどうぞ。

  9. 候補の設定が空の配列だった場合はすべてのエネミーが候補になります、
  10. 名前が空のエネミーは自動的に除外されます。

  11. 2012.01.07  Ver1.1
  12.  ・複数のトループをランダム化できるようになりました
  13.  ・最低出現数の設定を追加
  14.  ・座標の計算式を変更

  15. 2011.12.15 Ver1.0
  16.   公開

  17. =end

  18. #==============================================================================
  19. # □ 設定項目
  20. #==============================================================================
  21. module TMRDTRP
  22.   ENEMIES = {}      # この行はいじらない
  23.   EXCLUDE = {}      # この行はいじらない
  24.   MIN_ENEMY = {}    # この行はいじらない
  25.   MAX_ENEMY = {}    # この行はいじらない
  26.   
  27.   # トループID31番の設定
  28.   ENEMIES[34] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]     # 出現するエネミーの候補
  29.   EXCLUDE[34] = []                                  # 除外するエネミー
  30.   MIN_ENEMY[34] = 2                                 # 最低出現数
  31.   MAX_ENEMY[34] = 4                                 # 最高出現数

  32.   # トループID32番の設定
  33.   ENEMIES[35] = []          # 出現するエネミーの候補(空なら全エネミーを候補に)
  34.   EXCLUDE[35] = [29, 30]    # 除外するエネミー
  35.   MIN_ENEMY[35] = 3         # 最低出現数
  36.   MAX_ENEMY[35] = 6         # 最高出現数
  37.   
  38. end

  39. #==============================================================================
  40. # ■ Game_Troop
  41. #==============================================================================
  42. class Game_Troop < Game_Unit
  43.   #--------------------------------------------------------------------------
  44.   # ● セットアップ
  45.   #     troop_id : 敵グループ ID
  46.   #--------------------------------------------------------------------------
  47.   alias tmrdtrp_game_troop_setup setup
  48.   def setup(troop_id)
  49.     if TMRDTRP::ENEMIES[troop_id]
  50.       $data_troops[troop_id].members = []
  51.       if TMRDTRP::ENEMIES[troop_id].empty?
  52.         list = []
  53.         (1...$data_enemies.size).each do |id|
  54.           list[id - 1] = id unless $data_enemies[id].name == ""
  55.         end
  56.       else
  57.         list = TMRDTRP::ENEMIES[troop_id].clone
  58.       end
  59.       list -= TMRDTRP::EXCLUDE[troop_id] if TMRDTRP::EXCLUDE[troop_id]
  60.       max = TMRDTRP::MAX_ENEMY[troop_id]
  61.       max = max ? [[max, 1].max, 8].min : 6
  62.       min = TMRDTRP::MIN_ENEMY[troop_id]
  63.       min = min ? [[min, 1].max, max].min : 1
  64.       n = rand(rand(max - min + 1) + 1) + min
  65.       (0...n).each do |i|
  66.         member = RPG::Troop::Member.new
  67.         member.enemy_id = list[rand(list.size)]
  68.         space = [rand(480 / n), 64].max
  69.         member.x = i * space + 272 - (n - 1) * space / 2 + rand(32) - 16
  70.         member.y = 232 + rand(64) + (i % 2 * 24)
  71.         $data_troops[troop_id].members[i] = member
  72.       end
  73.     end
  74.     tmrdtrp_game_troop_setup(troop_id)
  75.   end
  76. end


复制代码

作者: 747633681    时间: 2013-8-18 09:29
这段代码说是随机定义敌人的代码可是怎么用却不知道
作者: tseyik    时间: 2013-8-18 21:36
本帖最后由 tseyik 于 2013-8-18 21:49 编辑
747633681 发表于 2013-8-18 09:29
这段代码说是随机定义敌人的代码可是怎么用却不知道


使用參考
http://hikimoki.sakura.ne.jp/rgss3/hikimoki_rgss3.zip
使用順序
# 敵群ID34番の設定(下面設定出現敵人数目2〜4,敵人ID1~10出現)
  ENEMIES[34] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]     # 登場的敵人
  EXCLUDE[34] = []                                  # 不登場的敵人
  MIN_ENEMY[34] = 2                                 # 最低出現数
  MAX_ENEMY[34] = 4                                 # 最高出現数

  # 敵群35番の設定(下面設定出現敵人数目3〜6,敵人全出現(敵人ID29/30除外))
  ENEMIES[35] = []          # 不登場的敵人(空白=全敵人登場)
  EXCLUDE[35] = [29, 30]    # 不登場的敵人
  MIN_ENEMY[35] = 3         # 最低出現数
  MAX_ENEMY[35] = 6      # 最高出現数

在敵群設加上34和35(不用設定登場怪物)
然後在地図設定加上敵群34和敵群35 (可指定出現区域
完成可測試一下  

作者: tseyik    时间: 2013-8-19 08:53
實際操作
先在脚本設定敵群(這裏設定敵群31和敵群32)

在資料庫加上敵群(無需加上敵人)

在地圖設定加上敵群31和敵群32(可設定登場区域)

完成設定





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