touch

働き

スプライトがグラフィック画面に描画された色と重なっているかどうかを確認します。

文法

touch(<n>,<c>)
  • n - スプライト番号の式。
  • c - 色番号の式。

説明

スプライトが表示されているグラフィック画面の位置に、指定された色が描画されているかどうかを確認します。もし描画されていたときは、-1 がこの関数の結果の値になります。もし描画されていなかった場合は、0 がこの関数の結果の値となります。

描画されているかどうかの判定は、スプライトを構成する四角形(16 x 16 ドット、もしくは 32 x 32 ドット)の範囲内に、指定された色が 1 ドットでも描画されているかどうか、でチェックします。

スプライトが非表示だったときは、この関数の結果の値は常に 0 となります。

サンプルプログラム

cls 3
sprite 0,0,0
line (0,150)-(639,150),4
do
  if not moving(0) then
    direction 0,random(0,8)
    speed 0,1
    distance 0,50
    move 0
  end if
  if touch(0,4) then
    stay 0
    beep
    end
  end if
loop