@ARRAY_HITを使用すると
これが
SELECTCASE RAND:10
CASE 0 TO 4
CASE 5 TO 7
CASEELSE
ENDSELECT
;・各CASEがどの程度発生しやすいのかイメージしづらい
;・発生確率の調整が面倒(数値範囲を直接いじる必要がある)
;・CASEを増設するとまた面倒
こうなる
;相対発生確率の代入
LOCAL = 5, 3, 2
SELECTCASE ARRAY_HIT(LOCAL, 3)
CASE 0
CASE 1
CASE 2
ENDSELECT
;・一次元配列変数が必須
;・相対的な発生確率が明示されている
;・発生確率の調整が容易、CASE増設も簡単