3回パンチしたらこわれるしくみ【ノードンガイド】

3回パンチしたらこわれるしくみ【ノードンガイド】 ノードンガイド

本記事は『ナビつき!つくってわかる はじめてゲームプログラミング』ノードンガイド「3回パンチしたらこわれるしくみ」の内容まとめです。

ヒトのパンチでシグナルが出力される仕組み、そのシグナルをカウントして3回目のパンチでモノが壊れるプログラミングを解説しています。

スポンサーリンク

パンチ3回でモノを壊す

追加条件:レッスン5のステップ4をクリアする

登場する主なノードン
ヒトノードンヒト ボタンノードンボタン
さわっているセンサーノードンさわっているセンサー モノをこわすノードンモノをこわす
ヒトと数つきモノ
パンチすると数つきモノの数が1に変わる

画面左にはヒト、右には青い直方体の数つきモノがあります。ヒトをスティック操作で動かし、Yボタンで数つきモノにパンチを入れると、パンチした瞬間に数が「0」→「1」に変化します。

今回はこの仕組みを改造して、3回パンチすると数つきモノが壊れるようにプログラミングします。

パンチでシグナルを出力する

まずはパンチで0→1に数字が変わる現在のプログラム画面を見てみましょう。

パンチで数つきモノの数が変わる仕組み

ヒトが数つきモノにパンチすると数が0→1に変わる仕組みは、以下のノードンたちで作られています。

  • スティックとボタンで操作できるヒトノードン
  • 直方体をチェックしているさわっているセンサーノードン
  • ANDノードン
  • 数つきモノノードン

数つきモノが表示している数はANDノードンが出力している数です。このANDノードンは2つの入力ポートに同じシグナルがあった時だけ、「1.00」を出力します。

ANDノードンの入力ポートには、

  • 上ポート:さわっているセンサー
  • 下ポート:Yのボタンノードン

が繋がっています。

さわっているセンサーは触っているモノがあるかをチェックします。

可視化した触っているセンサー

触っているセンサーはヒトにれんけつし、ピッタリとくっついています。ヒトの正面にうっすらと見える白いワクが触っているセンサーです。このワクが直方体に触るとシグナルを出力します。

次にYのボタンノードン。ボタンノードンはそのボタンが押された時にシグナルを出力します。

つまり、さわっているセンサーが数つきモノに触れていて、かつ、Yボタンが押された時に2つのシグナルが揃い、ANDノードンが1.00を出力するというわけです。

さらにボタンノードンのワイヤーは、ヒトのアクションポートとも繋がっているので、Yボタンが押された瞬間、ANDノードンにシグナルを送ると同時に、ヒトのアクションポートにもシグナルを送っています。

ボタンノードンは2体のノードンと繋がっている

アクションポートに入力があると、ヒトはパンチのアクションをします。

ANDノードンの条件が揃って「1.00」が出力され、数つきモノが「1」を表示する時、同時にヒトもパンチしているんですね。

ゲーム画面だけ見ていると、あたかもパンチで数が変化したように見えます。実際に数が変化する仕組みを動かしているのは、触っているセンサーと、ボタンノードンと、ANDノードンの3体です。

パンチでモノを壊す

先ほどのプログラム画面にモノをこわすノードンを追加して、パンチで数つきモノを壊すようにします。モノをこわすノードンの発動条件は、触っているセンサーが数つきモノに触れていて、なおかつ、Yボタンが押された時

パンチで数つきモノを壊す
  • モノをこわすノードンと数つきモノをれんけつする
  • ANDノードンをモノをこわすノードンにつなぐ

以上のように繋ぐと、ANDノードンからモノを壊すノードンにシグナルが送られた時に、れんけつしている数つきモノを壊します。

パンチでモノを壊す仕組みについてよく分からない時は、こちらのノードンガイドをご覧ください。

3回目のパンチで壊す

ようやく本題。パンチでモノを壊すプログラムを、3回目のパンチで壊れるように改造します。それにはANDノードンからの出力をカウントするノードンが必要です。

カウンターノードンでパンチの数を数える

カウンターノードンを呼び出し、ANDノードンをカウンターノードンの増やすポートに繋ぎます。これでANDノードンが1.00を出力した回数をカウントする仕組みになります。

カウンターノードンを数つきモノに繋ぎ、増える数が表示されるようにしておきましょう。

次はカウンターノードンのカウントを「3」と比べるプログラミングです。

カウントを3と比べるのに必要なノードン
3回目のパンチで数つきモノが壊れる仕組み

3の定数ノードンと、=のくらべるノードンを呼び出します。=のくらべるノードンは上下の入力ポートに入力される数が同じになった時にシグナルを出力します。

  • 定数ノードンをくらべるノードンの上ポートに繋ぐ
  • カウンターノードンをくらべるノードンの下ポートに繋ぐ
  • くらべるノードンをモノを壊すノードンに繋ぐ

これで3の定数とカウンターノードンのカウントが同じ数になった時、くらべるノードンがシグナルを出力し、モノを壊すノードンが数つきモノを壊すプログラムの完成です。

3回目のパンチで壊す-1
3回目のパンチで壊す-2

ゲーム画面の数つきモノにはパンチが当たった回数が表示されます。その数が3になった時、ゲーム画面からは見えませんが、くらべるノードンの条件が揃ってシグナルを出し、モノを壊すノードンが数つきモノを壊します。

プレイヤーからはパンチ3回で数つきモノが壊れたように見えます。

最後に

最後に3回パンチしたらモノが壊れる仕組みの要点をまとめておしまいです。

  • 触っているセンサーをヒトの正面にれんけつする
  • 触っているセンサーとパンチするための入力をANDノードンに繋ぎ、2つが揃った時にシグナルを出力するようにする
  • ANDノードンが出力した回数をカウンターノードンで数える
  • 3の定数とカウントをくらべるノードンで比べ、「=」の時にシグナルを出力するようにする
  • 数つきモノと連結したモノを壊すノードンに、くらべるノードンを繋ぐ

プログラミングしたノードンたちがどういう風に働いているか、想像しながらゲームを動かしてみてください。

以上、ノードンガイド「3回パンチしたらこわれるしくみ」の内容と解説でした。

ノードンガイドの一覧はこちら。


本記事に使用しているゲーム画像や著作権および商標権、その他知的財産権は、当該コンテンツの提供元に帰属します。© Nintendo

ノードンガイド
スポンサーリンク

Amazonでのお買い物は、Amazonギフト券をチャージして購入するのがお得です。チャージするだけで最大2.5%のポイントが貰えます。

プログラミングを本で学ぶ

Amazon APIのアクセスキーもしくはシークレットキーもしくはトラッキングIDが設定されていません。「Cocoon設定」の「API」タブから入力してください。
Amazon APIのアクセスキーもしくはシークレットキーもしくはトラッキングIDが設定されていません。「Cocoon設定」の「API」タブから入力してください。
この記事を書いた人
ぷろみーちゃん

Switchゲーム大好きな成人女。switchソフト『ナビつき!つくってわかるはじめてゲームプログラミング』攻略中。更新遅くてごめんなさい。よければリピーターになってください!(2021/6/1開設)

ぷろみーちゃんをフォローする

コメント

タイトルとURLをコピーしました