Range#zip(Range)
to be more specific
Only occurs when using RPG Maker (mkxp-z)
type, i.e. Ruby 3
Works on RPG Maker Plugin 1.20.29 (Ruby 3.1.3)
Freezes on RPG Maker Plugin 1.20.40 (Ruby 3.2.2) and later
Test script
p "Array#zip(Range): " + ([1,2,3,4,5].zip('a'..'e')).inspect
p "Range#zip(Array): " + ((1..5).zip(['a','b','c','d','e'])).inspect
p "Range#zip(Range): " + ((1..5).zip('a'..'e')).inspect
p "Good!"
Possible preload.rb
fix
if MKXP.ruby_version[0] == '3'
class Range
alias_method :original_zip, :zip
def zip(*other_arrays, &block)
original_zip(*other_arrays.map { |arr| arr.is_a?(Range) ? arr.to_a : arr }, &block)
end
end
end