デーカーを移動する
画面に何かを表示するのに、いちいちデーカーを作らなくちゃいけなかったり
名前をつけなくちゃいけなかったり、なんだかちょっと面倒くさいな…
と思ったかもしれない。
面倒なのは、まぁ確かなのだが
こういう構造にしておくと、複雑な演出を簡潔に記述できるのである。
なぜ簡潔になるのか。
それはデーカーの動作をデーカー自身に任せることができるからだ。
──────現実で考えてみよう。
目の前に大きな壁がある。
壁の前にいるのは自分ひとりだけ。
壁には装飾が1つ貼り付けてある。
その装飾を動かそうとする場合、どうするだろうか。
装飾を手にとって、別の場所まで持っていけばいいだろう。
簡単な話だ。
しかし装飾が何個もあって、それぞれ同時に動かさないといけないとなったらどうだろう…
いくら手があっても足りない!
途方に暮れ…
そしてこう思うかもしれない。
「装飾が勝手に動いてくれればいいのに…」
装飾に車輪をつけ、機械仕掛けにして、目的の位置まで勝手に動くようにすればいい。
ちょっと大げさだが…
デーカーとは、まさにそんな大げさなことを実現してしまったものなのである。
これまでデーカーを部品だとか装飾だとか呼んで来たが、
実のところデーカーは単なる装飾ではない。
より高度な舞台装置… 言うなれば…
デーカーはロボットのようなものである。
デーカーには様々な命令をすることができる。
命令を受けたデーカーは、命令を自律的に遂行してくれる。
手取り足取り動かす必要はないのだ。
Move命令
ではデーカーにどんな命令をすることができるのか、具体的に見ていこう。
Move命令はデーカーに「移動しろ」と指示する命令である。
method Main()
{
CreateImage(name="画像", image="画像.png", x=50, y=50);
Enter(to="画像");
Move(to="画像", time=1000, x=200, y=200);
}
toパラメータには対象となるデーカーの名前を指定する。
timeパラメータには動作の所要時間をミリ秒単位で指定する。
x, yパラメータには移動後の位置を指定する。
さっそく実行してみよう。
イメージデーカーが1秒かけて斜めに移動した。
このようにしてデーカーに対して移動命令を発行することで
デーカーの移動を簡単に実現できるのである。