スプライトのクリック検知
やること
この教材 では、Jasmine Tea のプログラムでスプライトがクリックされたかどうかを検知する方法を学びます。これにより、ユーザー操作に応じたインタラクティブなプログラムを作成することができます。
ステップ1
エディターに以下のプログラムを入力してみましょう。
show 0,(100,100)
show 1,(200,150)
do
tap x,y,s
if s >= 0 then
print "スプライト番号";s;"がクリックされました!"
end if
loop
ステップ2
エディターの右下にある「▶実行」ボタンを押すと、入力したプログラムが実行されます。このプログラムは無限ループになるため、一定時間後に「止める」ボタンを押してプログラムを停止してください。その後、画面の右上にある「ドキュメント」タブを押して、ここに戻ってきてください。
では、「▶実行」ボタンを押してください。
ステップ3
実行画面に以下のように表示されたら成功です。
スプライト0またはスプライト1をクリックすると、「スプライト番号○がクリックされました!」と表示されます。
ステップ4
実行したプログラムを解説します。
使っている命令の簡単な紹介
-
show
はスプライトを画面に表示する命令です。 -
tap
はユーザーのタップやクリックの座標とスプライト番号を検知する命令です。 -
print
はメッセージを画面に表示する命令です。
プログラムで行われていること
-
show 0,(100,100)
とshow 1,(200,150)
でスプライト0と1を画面に表示します。 -
do-loop
の中で、tap x,y,s
を使ってクリックが行われた座標とスプライト番号を検知します。 -
スプライト番号
s
が0以上の場合、対応するスプライトがクリックされたことをメッセージとして表示します。
学ぶべきこと
- スプライトがクリックされたかどうかを判定する方法。
- ユーザー操作に応じた処理をプログラムに組み込む方法。
- ループを使った継続的なクリック検知の方法。
チャレンジ
以下のようなカスタマイズを行って、さらに理解を深めましょう。
- スプライトの位置を変更して、クリックしやすい場所に調整してみましょう。
- 新しいスプライトを追加して、複数のスプライトをクリックできるようにしてみましょう。
- クリックされたスプライトを非表示にする処理を追加してみましょう。