# 오랫만에 스크립트 자료실에 글을 올리네요.
# 개발자를 위한 스크립트입니다. 질문은 받지 않겠습니다.
# rand 함수의 기능을 확장한 스크립트 입니다. - by 허걱
# 배열, 범위, 소수, 정수를 사용할 수 있습니다. (소수일 경우 자릿수가 맞춰집니다.)
# 값이 없거나 0일경우 0부터 1사이의 소수값을 반환합니다.
# 되도록이면 최상위 섹션에 삽입하시길 권장합니다.
def rand(value = 0)
if value.is_a?(Array)
result = value[super(value.size)]
elsif value.is_a?(Range)
min = value.first
max = value.last
max += 1 unless value.exclude_end?
result = super(max - min) + min
elsif value.is_a?(Float)
size = value.to_s.split(//).size - value.to_i.to_s.split(//).size - 1
size.times { value *= 10 }
result = super(value).to_f
size.times { result /= 10 }
else
result = super(value)
end
return result
end
# presented by 허걱