コメント
このコメントは、宇宙文字解読3へのコメントです。コメントの内容
コメントの内容(一番最初の投稿)
aoihikawa(投稿日:2014/01/26 10:01/26/14)
こういった、連続や類似したデータを複数扱う場合、
配列を使用すると便利になります
配列についてはこちら
配列を使用すると便利になります
配列についてはこちら
#画像スプライト deleteAllSprite() #最初に使う前にキャンバスをキレイにしておく drawCanvas() setCanvasVisible(true) #準備 x =0 y =0 w =240 h =180 xx=0 yy=0 ww=240 hh=180 #表示する座標の設定 soto_x = -200 soto_y = -200 naka_x = 0 naka_y = 0 #画像番号リストを配列として用意 img_id_list_str = "221082,221089,221096,221103,221110,221117,221131,221131,221138,221145,221152,221159,221166,221180,221187,221194,221201,221208,221215,221222,221231,221238,221245,221252,221259,221266,221273,221280,221287,221294" img_id_list = createArray() img_id_list = splitString(img_id_list_str, ",") #,区切りで文字列を分解 img_id = createArray() i = 0; img_id_list_length = getArrayLength(img_id_list) #長さを保管しておき、ループさせる while i < img_id_list_length img_id_list[i] = toNumber(img_id_list[i]) #文字列になっているので数値に直す #画像IDをここに入れます img_id[i] = createSprite(img_id_list[i]) setSpriteRect(img_id[i], x,y,w,h, xx,yy,ww,hh) #まずは、すべての画像を画面外に表示 setSpritePosition(img_id[i], soto_x, soto_y) end view_id = "" #アニメーションで表示する画像のID hide_id = "" #アニメーションで隠す画像のID #アニメーションさせる while i < img_id_list_length #それぞれのIDをセットする if i > 0 view_id = img_id[i] hide_id = img_id[(i - 1)] else view_id = img_id[i] end #セットされたIDをもとに、座標を決定する setSpritePosition(view_id, naka_x, naka_y) if i > 0 setSpritePosition(hide_id, soto_x, soto_y) end drawCanvas() i = i + 1 waitTime(100) end #画像を消しています。 setCanvasVisible(false) deleteTextAll()
配列を使用すると便利になります
配列についてはこちら
こうすることで
スクリプトが短くすっきりする他、
アニメーションの枚数が増えた場合も
img_id_list_strの内容を編集するだけで
対応が可能になります