見出し画像

配列とsetTimeoutを使った継続処理

setTimeout( function, delay, args, args2...);

setTimeoutは引数部分を渡せるので配列を渡すことでその配列の最初から最後までを一定のタイミングで処理させることができる。

function message(msg){
  alert("Good "+msg.shift());
  if (msg.length) setTimeout( message, 1000, msg);
}

message(["morning","afternoon","evening"]);

これをゲームで応用すると継続ダメージや継続回復など一定時間で複数回の効果を処理できる。

引数の数や種類を工夫すればdelayを変えて処理タイミングを早くしたり遅くしたりもできる。

この記事が気に入ったらサポートをしてみませんか?