【解決】ひきもき様のランダムトループをエネミー毎に整列させたい

Rento
記事: 8
登録日時: 2021年3月25日(木) 02:18

【解決】ひきもき様のランダムトループをエネミー毎に整列させたい

投稿記事by Rento » 2021年11月08日(月) 05:40

お世話になっております。
ひきもき様のRGSS素材「ランダムトループ」にて、
ランダムで抽出されたエネミーが

A,B,A,A,B

等となったとき、

A,A,A,B,B

となるように致したく
お知恵を拝借できればと思いリクエストさせていただきます。
恐れ入りますが、よろしくお願いいたします。
最後に編集したユーザー Rento on 2021年11月09日(火) 04:40 [ 編集 1 回目 ]

TOMO
記事: 343
登録日時: 2015年11月16日(月) 20:12
連絡を取る:

Re: 【RGSS3】ひきもき様のランダムトループをエネミー毎に整列させたい

投稿記事by TOMO » 2021年11月08日(月) 13:30

コード: 全て選択

    $data_troops[troop_id].members[i] = member
  end
end

コード: 全て選択

   $data_troops[troop_id].members[i] = member
  end
  $data_troops[troop_id].members.sort_by! {|m| m.enemy_id }
end
とすれば多分可能です
Rento
記事: 8
登録日時: 2021年3月25日(木) 02:18

Re: 【RGSS3】ひきもき様のランダムトループをエネミー毎に整列させたい

投稿記事by Rento » 2021年11月09日(火) 01:26

TOMO様

早々にご回答いただきありがとうございます!

恐れ入りますが頂いたスクリプトで試行してみましたが
新規プロジェクト含めソートされず既存のままでした。

重ね重ね恐縮ですが、ご教示いただけますと幸いです。
なにとぞよろしくお願いいたします。
TOMO
記事: 343
登録日時: 2015年11月16日(月) 20:12
連絡を取る:

Re: 【RGSS3】ひきもき様のランダムトループをエネミー毎に整列させたい

投稿記事by TOMO » 2021年11月09日(火) 02:55

なら↑のをやめて

コード: 全て選択

      n = rand(rand(max - min + 1) + 1) + min
      (0...n).each do |i|
        member = RPG::Troop::Member.new
        member.enemy_id = list[rand(list.size)]

コード: 全て選択

      n = rand(rand(max - min + 1) + 1) + min
      enemy_list = []
      n.times { enemy_list << list.sample }
      enemy_list.sort!
      (0...n).each do |i|
        member = RPG::Troop::Member.new
        member.enemy_id = enemy_list[i]
としてみて下さい
Rento
記事: 8
登録日時: 2021年3月25日(木) 02:18

Re: 【RGSS3】ひきもき様のランダムトループをエネミー毎に整列させたい

投稿記事by Rento » 2021年11月09日(火) 04:40

TOMO様

頂いたもので試した結果、無事理想通りの仕様となりました!
早々にご対応いただいた事、大変感謝しております。
本当にありがとうございました。

“VX / Ace:スクリプト素材のリクエスト” へ戻る