ブロック崩し
投稿者 : 海ンちゅー(sechttp505.sec.ppp.nifty.com)
- 2005/01/07(Fri) 16:23
No.7646
|
|
|
|
|
↑のプロジェクトのことですが、 ブロックをアニメーションしようとして↓のようにしましたが、
if (pa==$pat_block+14) { updateEx(10); f=$pat_block+14 ; // 置換前のキャラクタパターン t=$pat_block+15 ; // 置換後のキャラクタパターン // $pat_from を $pat_to に置換 for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==f) $map.set(x,y,t); } } } if (pa==$pat_block+15) { updateEx(10); f=$pat_block+15 ; // 置換前のキャラクタパターン t=$pat_block+16 ; // 置換後のキャラクタパターン // $pat_from を $pat_to に置換 for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==f) $map.set(x,y,t); } } } if (pa==$pat_block+16) { updateEx(10); f=$pat_block+16 ; // 置換前のキャラクタパターン t=$pat_block+17 ; // 置換後のキャラクタパターン // $pat_from を $pat_to に置換 for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==f) $map.set(x,y,t); } } } if (pa==$pat_block+17) { updateEx(10); f=$pat_block+17 ; // 置換前のキャラクタパターン t=$pat_block+18 ; // 置換後のキャラクタパターン // $pat_from を $pat_to に置換 for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==f) $map.set(x,y,t); } } } if (pa==$pat_block+18) { updateEx(10); f=$pat_block+18 ; // 置換前のキャラクタパターン t=$pat_block+19 ; // 置換後のキャラクタパターン // $pat_from を $pat_to に置換 for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==f) $map.set(x,y,t); } } } if (pa==$pat_block+19) { updateEx(10); f=$pat_block+19 ; // 置換前のキャラクタパターン t=$pat_block+20 ; // 置換後のキャラクタパターン // $pat_from を $pat_to に置換 for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==f) $map.set(x,y,t); } } } if (pa==$pat_block+20) { updateEx(10); f=$pat_block+20 ; // 置換前のキャラクタパターン t=$pat_block+14 ; // 置換後のキャラクタパターン // $pat_from を $pat_to に置換 for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==f) $map.set(x,y,t); } } } なぜかアニメーションしません。 どうすれば直りますか。
検索キーワード ブロック くずし 崩し アニメ
|
Re: ブロック崩し
投稿者 : 海ンちゅー(sechttp505.sec.ppp.nifty.com)
- 2005/01/07(Fri) 16:34
No.7647
|
|
|
|
Re: ブロック崩し
投稿者 : 海ンちゅー(sechttp506.sec.ppp.nifty.com)
- 2005/01/07(Fri) 16:39
No.7648
|
|
|
|
Re: ブロック崩し
投稿者 : N@N(actkyo073214.adsl.ppp.infoweb.ne.jp)
- 2005/01/07(Fri) 16:59
No.7649
|
|
|
|
長いのでまとめられますね。
//clockは、$pat_block+14から何個目かを表します。 while(1){ for (clock=0;clock<=6;clock++){//変数clockを自動的に0〜6→0〜と変化させます。 updateEx(10); for (y=0; y<$map.height ; y++) { for (x=0; x<$map.width ; x++) { if ($map.get(x,y)==$pat_block+14+bclock){ $map.set(x,y,$pat_block+14+clock);//変更前だったら一つ進める } } } bclock=clock;//次のパターン変更前のclockの値を蓄えます。 } }
updateEx(10);がonBeforeMove内で動いてくれたかどうか・・・多分大丈夫だと思います。シークレットオブジェクトで確認済みです。
|
Re: ブロック崩し
投稿者 : xsb007(YahooBB219171009010.bbtec.net)
- 2005/01/08(Sat) 09:36
No.7652
|
|
|
|
onBeforeMoveでやるとちらつくみたいなので、SecretCharでやるしかありません。
extends SecretChar;
while (1) { for(x=0; x<$map.width; x++) { for(y=0; y<$map.height; y++) { pa=$map.get(x,y); pa2=pa-$pat_block; if (pa2>=14 && pa2<=19) $map.set(x,y,pa+1); if (pa2>=21 && pa2<=26) $map.set(x,y,pa+1); if (pa2>=28 && pa2<=33) $map.set(x,y,pa+1); if (pa2==20 || pa2==27 || pa2==34) $map.set(x,y,pa-6); } } UpdateEx(10); }
ただ、アニメーションは重いので、遅いマシンのことも考えて、アニメーションをOFFにできるようにするといいかもしれません。
|
Re: ブロック崩し
投稿者 : 海ンちゅー(sechttp501.sec.ppp.nifty.com)
- 2005/01/09(Sun) 22:29
No.7660
|
|
|
|
Re: ブロック崩し
投稿者 : 海ンちゅー(nthkid054162.hkid.nt.ftth.ppp.infoweb.ne.jp)
- 2005/01/10(Mon) 11:07
No.7663
|
|
|
|
>>7652 >xsb007さん UpdateEx(10); を UpdateEx(5); にして、↑の後に Update(); を入れたら少し早くなりました。
|
|