トップページ > プログラム > 2016年10月27日 > 2MnkRHxj

書き込み順位&時間帯一覧

9 位/158 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000102000000000003



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net

書き込みレス一覧

Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
97 :デフォルトの名無しさん[]:2016/10/27(木) 10:32:10.58 ID:2MnkRHxj
DXrubyで、配列に画像、名前、数値と言った具合に値を格納したいので構造体を使ってます。
しかし、arr[n].name で名前は表示できるのですが、画像が描画できません。どうしたら良いでしょうか?

require 'dxruby'
arr = []
Units = Struct.new(:fig, :name, :lv)
for i in 0..511
img = Image.new(10, 10, color = [i * 3 % 256, i * 5 % 256, i * 7 % 256])
spr = Sprite.new(i % 100 * 10, i / 100 * 10, img)
arr[i] = Units.new(spr, "ice", i * 1.2)
end
Window.loop do
Sprite.draw(arr)
(arr[4].fig).draw
break if Input.key_down?(K_RETURN)
end
Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
98 :デフォルトの名無しさん[]:2016/10/27(木) 12:20:18.56 ID:2MnkRHxj
もう一つお聞きしたいです。
空の配列に対してarr[810] = object
とすると、arr[0]に入ってしまいます。
試しに、あらかじめ、配列の全要素に0とかを代入してやると正しい位置に入ります。
insertメソッドを使ってみても同様でした。
配列の長さが予めわからない場合、これだとできない気がするのでなるべくこの方法は取りたくありません。
スマートに挿入する方法は無いですか?
Ruby 初心者スレッド Part 59 [無断転載禁止]©2ch.net
99 :デフォルトの名無しさん[]:2016/10/27(木) 12:21:56.63 ID:2MnkRHxj
>>98に補足
現在の配列の添字の最大数を超えて挿入したときの挙動はpushみたいでした。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。