Scratch(スクラッチ)「野球ベースボールゲーム」作り方の説明

Scratch(スクラッチ)「野球ベースボールゲーム」作り方の説明

Scratch(スクラッチ)「野球ベースボールゲーム」作り方の説明

ピッチャー(コンピューター)と対戦し、ホームランの本数を競うゲームをScratch(スクラッチ)でプログラミングしました。

KIDSPROブログニュース「スキャニメーション」でも説明しましたが、人間の目は、見えない部分を予測して補います。パラパラ漫画で漫画が動いて見えるのは、この人間の目の現象を利用しています。今回のプログラミングでもこの現象を利用しています。

バッターがバットをスイングするプログラミングでは、上図のような1スイング前、2スイング中、3スイング後の3つのコスチュームを用意します。次に、上図左のスペースキー押下をトリガーとしたスクリプトにより、この3つのコスチュームを順次切り替えて表示させると、人間の目にはバッターがバットを振っているように見えます。コスチュームの数を増やすと、よりスムーズにスイングしているように見えますが、野球を見たことがある人なら、スイング前とスイング後の2枚だけでもバッターがスイングしているように見えると思います。

また、ピッチャーの投球についても、1投球前、2投球中、3投球後の3つのコスチュームを用意し、順次コスチュームを切り替えて表示させるスクリプトにより、ピッチャーがボールを投げる動きを実現しました。

上図はボールのスクリプトです。左側のスクリプトでは、ボールの種類(種類=0はストレート/種類=1はカーブ)とボールのスピード(2, 3, … ,6)を乱数によりランダムに決定し、「投げる」というカスタムブロックを実行します。また、カーブボールはストレイトボールよりも25%だけ遅いスピードに設定しています。

「投げる」カスタムブロックでは、上段の部分でホームラン判定を行っています。バッターのスイング中コスチュームのバットの色(深緑)と同じ色を、「もし□色に触れたなら」ブロックの□色に設定します。これにより、バッターがスイング中コスチュームの時に、バットの深緑色部分がボールに触れたか判定出来るようになります。この判定が正の時に、ボールの移動方向や角度を変えるスクリプトを作れば、バッターがボールを打ち返し、ボールがホームランの軌道を描くような動きにすることが出来ます。

「投球のスクリプト」では、ボールを回転させながら、x座標とy座標をカスタムブロックの引数「スピード」値の割合に応じてマイナス方向に移動させ、ボールをステージ右上(ピッチャー投球中の手の部分)から左下に移動させています。また、カスタムブロックの引数「球種」=0(ストレート)の時は、ボールは真っすぐ移動し、引数「球種」=1(カーブ)の時は、x座標が100よりも小さくなったらy座標の変化値を1.8倍にしてy座標の変化幅を大きくして、ボールがカーブの軌道を描くようにプログラミングしました。

「ボール判定スクリプト」では、「球種」=0(ストレート)の場合はバッターがスイングしていなくてもストライク判定、「球種」=1(カーブ)の場合はバッターがスイングしていなければボール判定するようにプログラミングしました。スイング判定は、上図左側に記載しているバッターのスクリプトで実現しています。

【ホームラン王決定戦ゲーム Home Run King Baseball Game 】

【関連する投稿ページ】

・Scratch(スクラッチ)「RPG用の背景画面スクロール」作り方説明動画 Part 2

・Scratch(スクラッチ)「RPG用の背景画面スクロール」作り方説明動画 Part 1

・Scratch(スクラッチ)「インベーダーのミサイル発射」作り方説明動画

・Scratch 3.0「タブレット向けゲームプログラム集」説明動画 Part 2

・Scratch 3.0「タブレット向けゲームプログラム集」説明動画 Part 1

・Scratch 3.0「バスケットボールマン」ゲームの作り方説明動画

・Scratch(スクラッチ)「インベーダーゲーム」作り方説明動画

・Scratch3.0プレビュー版「タブレット用のゲーム」作り方説明動画

・Scratch(スクラッチ)「ブロック崩しゲーム」作り方説明動画

・Scratch(スクラッチ)「野球ベースボールゲーム」作り方の説明

・Scratch(スクラッチ)「イントロ用動画」作り方の説明

・Scratch(スクラッチ)「タイピング風の文字表示」作り方の説明

・Scratch(スクラッチ)「スキャニメーション」作り方の説明

・Scratch(スクラッチ)「スライドパズル」作り方の説明

・Scratch(スクラッチ)「100%ペンによる動的な三角関数グラフ」作り方の説明

・Scratch(スクラッチ)「日本語サウンドボード」作り方の説明

・Scratch(スクラッチ)「イライラ棒ゲーム (Frustration Game)」作り方の説明


【Scratch(スクラッチ)コースの紹介動画】

【無料体験コースの詳細について】

・Scratch無料体験コース(小学生以上向け)

・レゴWeDo+ScratchJr無料体験コース(5~7歳幼児向け)