RGSS Tips @Wiki
範囲・配列などのオブジェクトから数字オブジェクトを展開・まとめる
最終更新:
匿名ユーザー
-
view
def expand_val(what)
ary = []
return ary.push(what) if what.is_a?(Integer)
what.each do |w|
if w.is_a?(Integer)
ary.push(w)
elsif w.is_a?(Range)
w.each {|range| ary.push(range)}
elsif w.is_a?(Array)
ary += expand_val(w) # 別の自分を呼び出す
end
end
return ary
end
# 使い方 val = [1, 50..53, [100, 101, 102], 2, 3] 展開・まとめた配列 = expand_val(val) # => [1, 50, 51, 52, 53, 100, 101, 102, 2, 3]