注釈

こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。

参加する理由は?

  • エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。

  • 学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。

  • 独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。

  • 特別割引:最新製品の独占割引をお楽しみください。

  • 祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。

👉 私たちと一緒に探索し、創造する準備はできていますか?[ここ]をクリックして今すぐ参加しましょう!

1.16 釣りゲーム

今日は、釣りゲームを作成します。

ステージエリアの水を観察し、魚がフックにかかったのを見つけたら、スイッチを傾けてそれを捕まえることを忘れないでください。

../_images/1.16_header.png

必要な部品

このプロジェクトには、以下の部品が必要です。

../_images/1.16_component.png

キット全体を購入するのは確かに便利です。以下がリンクです:

名前

このキットのアイテム

リンク

Raphael Kit

337

Raphael Kit

以下のリンクから部品を個別に購入することもできます。

コンポーネントの紹介

購入リンク

GPIO拡張ボード

BUY

ブレッドボード

BUY

ジャンパーワイヤー

BUY

抵抗器

BUY

傾斜スイッチ

-

回路を組む

../_images/1.16_fritzing.png

コードをロードして結果を確認する

Scratch 3に( 1.16_fishing_game.sb3 )のコードファイルをロードします。

子供が釣りをしているのを見ることができます。水面が動くと、傾斜スイッチを振って魚を捕まえることができます。 スイッチを振り続けないと、魚が逃げてしまうことを覚えておいてください。

スプライトに関するヒント

Sprite1を選択し、左上の Costumes をクリックします。 ~/raphael-kit/scratch/picture パスから Upload Costume ボタンを使用して6枚の画像(fish1 から fish6)をアップロードします。デフォルトの2つのコスチュームを削除し、スプライトの名前を fish に変更します。

../_images/1.16_upload_fish.png

コードに関するヒント

../_images/1.16_fish2.png

fish スプライトの初期コスチュームを fish1 に設定し、 fish_status の値を0に設定します( fish_status=0 の場合、魚はフックにかかっていない。 fish_status=1 の場合、魚はフックにかかっている)。

../_images/1.16_fish3.png

fish_status=0 の場合、つまり魚がまだフックにかかっていない場合、釣りゲームを開始します。0から10秒のランダムな時間を待ち、 fish_status を1に設定します。これは魚がフックにかかったことを意味し、"魚がかかった"というメッセージを放送します。

注釈

放送ブロックの目的は、他のコードブロックや他のスプライトにメッセージを送ることです。そのメッセージは、要求または命令のいずれかです。

../_images/1.16_fish4.png

「魚がかかった」というメッセージを受け取ると、 fish スプライトを fish2fish3 のコスチュームの間で切り替えて、魚がかかるのを見ることができます。

../_images/1.16_fish5.png

コスチュームを切り替えた後、ゲームが終了していない場合、それは魚がフックから外れて逃げたことを意味するので、 fish スプライトのコスチュームを fish6 (魚がすべっている状態)に切り替えます。

../_images/1.16_fish6.png

gpio17が高い(傾斜スイッチが傾いている)場合、釣り竿が引き上げられたことを意味します。この時点で、fish_statusの値を判断します。それが1の場合、魚がフックにかかったときに釣り竿が引き上げられ、fish4コスチューム(魚が捕まった)に切り替えられます。逆に、魚がフックにかかっていないときに釣り竿が引き上げられると、fish5コスチューム(何も捕まえられない)に切り替えられます。