BLOG株式会社ラクーンホールディングスのエンジニア/デザイナーから技術情報をはじめ、世の中のためになることや社内のことなどを発信してます。by一緒にラクーンのサービスをつくりませんか?採用情報カジュアル面談2021.2.18開発Switchでプログラミングをしてみよう開発のきくちです。SmileBASIC」を使用して簡単なフィットネスゲームを作成してみました。体験版で動作しますので、本体をお持ちであればどなたでも試すことが可能です。作ったもの今回作成したものがこちらです。加速度センサーを使ってパンチを判定させて枠の中に入ったフルーツを狙います。https://techblog.raccoon.ne.jp/wp-content/uploads/2021/02/sb_game.mp4まずは初心者ガイドソフトを起動させると初心者ガイドがトップメニューにあります。ソフトの使い方、プログラムの書き方や実行方法から始まり、コントローラーを使ってスプライトを動かすまで、未経験者にも理解できるようなチュートリアルになっています。最後の方になるにつれ記述するコードの量も増えますので、キーボードがあれば良いかもしれません。作成したプログラムはこちらです。要点を絞って解説していきます。参照頂ければと思います。ENDIFENDメインループ8~20行目がメインループになっており、Bボタンが押されるまで永遠と実行され続けます。フルーツの出現10~15行目がフルーツの出現処理です。コールバックを設定しています。コールバック処理が呼ばれます。フルーツの移動(34行目)や当たり判定(27行目)はコールバック処理内で行っています。コントローラーの入力2行目と16行目がコントローラーの入力です。2本持ち、モーションセンサーありで設定します。リファレンスを参照頂ければと思います。加速度情報を取り出します。左右別々のコントローラーとして設定しているので2回実行しています。加速度の計測はこのようになっています。した場合、左側のコントローラー(赤い方)は図の右方向が正でパンチも右方向なので加速度が正になった場合に判定とします。右側のコントローラ(青い方)は図の右方向が正ですがパンチが左方向になるので加速度が負になった場合に判定となります。X2<=-3」という条件になりました。フルーツの爆発28~30行目が爆発処理です。スプライトの表示位置を調整しています。使用して爆発経過を表すスプライトの定義番号である7295から7299まで4フレーム間隔でアニメーションさせています。アニメーション対象に設定されているドットは、付与することでアニメーション終了時にスプライトが削除される仕様になっています。スプライトごとに個別で保持可能な変数に爆発判定フラグを立てて管理しています。なんて思う方もいるかもしれませんが、趣味でゲームを作ってみたい方やプログラミングを始めてみたい方にも楽しみながら学習できるので、ハードルも低く非常におすすめできると感じました。お持ちの方は一度試して頂けると幸いです。