コメント

このコメントは、【トピック】スプライトへのコメントです。

コメントの内容

Cdv30200 aoi icon mini aoihikawa(投稿日:2011/09/14 18:09/14/11)
惜しいです(w


1枚ずつ別の画像の場合は、
「createSprite」~「setSpriteRect」までが準備のセットです。
なぜなら、ここまではアニメーション中も
変化が起きない固定の値だからです。


while文の中に必要なのは、
画面上に描画する位置を設定する
「setSpritePosition」

1枚ずつ、表示する位置を
画面内、画面外と変更してあげることで
アニメーションを表示します。
#画像スプライト 
deleteAllSprite() #最初に使う前にキャンバスをキレイにしておく 
drawCanvas() 
setCanvasVisible(true) 
 
#準備 
x =0
y =0
w =150
h =150
xx=0
yy=0
ww=150
hh=150
 
img_id_01 = createSprite(84357) 
setSpriteRect(img_id_01, x,y,w,h, xx,yy,ww,hh)

img_id_02 = createSprite(84364) 
setSpriteRect(img_id_02, x,y,w,h, xx,yy,ww,hh)

img_id_03 = createSprite(84371) 
setSpriteRect(img_id_03, x,y,w,h, xx,yy,ww,hh) 

img_id_04 = createSprite(84378) 
setSpriteRect(img_id_04, x,y,w,h, xx,yy,ww,hh) 

img_id_05 = createSprite(84385) 
setSpriteRect(img_id_05, x,y,w,h, xx,yy,ww,hh) 

#表示する座標の設定
soto_x = -200
soto_y = -200

naka_x = 0
naka_y = 0

#まずは、すべての画像を画面外に表示
setSpritePosition(img_id_01, soto_x, soto_y)
setSpritePosition(img_id_02, soto_x, soto_y)
setSpritePosition(img_id_03, soto_x, soto_y)
setSpritePosition(img_id_04, soto_x, soto_y)
setSpritePosition(img_id_05, soto_x, soto_y)


#アニメーションさせる 
 
i = 0 
while i < 5 
  view_id = "" #アニメーションで表示する画像のID
  hide_id = "" #アニメーションで隠す画像のID
  
  #それぞれのIDをセットする
  case i 
    when 0   
      view_id = img_id_01
      hide_id = img_id_05
    when 1   
      view_id = img_id_02
      hide_id = img_id_01
    when 2   
      view_id = img_id_03
      hide_id = img_id_02
    when 3   
      view_id = img_id_04
      hide_id = img_id_03
    when 4   
      view_id = img_id_05
      hide_id = img_id_04
  end 
  
  #セットされたIDをもとに、座標を決定する
  setSpritePosition(view_id, naka_x, naka_y)
  setSpritePosition(hide_id, soto_x, soto_y)
  
  drawCanvas() 
  
  i = i + 1 
  waitTime(100) 
  
end

コメントの内容(一番最初の投稿)

Cdv30200 aoi icon mini aoihikawa(投稿日:2011/09/14 18:09/14/11)
惜しいです(w


1枚ずつ別の画像の場合は、
「createSprite」~「setSpriteRect」までが準備のセットです。
なぜなら、ここまではアニメーション中も
変化が起きない固定の値だからです。


while文の中に必要なのは、
画面上に描画する位置を設定する
「setSpritePosition」

1枚ずつ、表示する位置を
画面内、画面外と変更してあげることで
アニメーションを表示します。
#画像スプライト 
deleteAllSprite() #最初に使う前にキャンバスをキレイにしておく 
drawCanvas() 
setCanvasVisible(true) 
 
#準備 
x =0
y =0
w =150
h =150
xx=0
yy=0
ww=150
hh=150
 
img_id_01 = createSprite(84357) 
setSpriteRect(img_id_01, x,y,w,h, xx,yy,ww,hh)

img_id_02 = createSprite(84364) 
setSpriteRect(img_id_02, x,y,w,h, xx,yy,ww,hh)

img_id_03 = createSprite(84371) 
setSpriteRect(img_id_03, x,y,w,h, xx,yy,ww,hh) 

img_id_04 = createSprite(84378) 
setSpriteRect(img_id_04, x,y,w,h, xx,yy,ww,hh) 

img_id_05 = createSprite(84385) 
setSpriteRect(img_id_05, x,y,w,h, xx,yy,ww,hh) 

#表示する座標の設定
soto_x = -200
soto_y = -200

naka_x = 0
naka_y = 0

#まずは、すべての画像を画面外に表示
setSpritePosition(img_id_01, soto_x, soto_y)
setSpritePosition(img_id_02, soto_x, soto_y)
setSpritePosition(img_id_03, soto_x, soto_y)
setSpritePosition(img_id_04, soto_x, soto_y)
setSpritePosition(img_id_05, soto_x, soto_y)


#アニメーションさせる 
 
i = 0 
while i < 5 
  view_id = "" #アニメーションで表示する画像のID
  hide_id = "" #アニメーションで隠す画像のID
  
  #それぞれのIDをセットする
  case i 
    when 0   
      view_id = img_id_01
      hide_id = img_id_05
    when 1   
      view_id = img_id_02
      hide_id = img_id_01
    when 2   
      view_id = img_id_03
      hide_id = img_id_02
    when 3   
      view_id = img_id_04
      hide_id = img_id_03
    when 4   
      view_id = img_id_05
      hide_id = img_id_04
  end 
  
  #セットされたIDをもとに、座標を決定する
  setSpritePosition(view_id, naka_x, naka_y)
  setSpritePosition(hide_id, soto_x, soto_y)
  
  drawCanvas() 
  
  i = i + 1 
  waitTime(100) 
  
end