« プログラミング講座(151) UI の変更 | トップページ | プログラミング講座(153) じゃんけんゲーム »

2014/07/02

プログラミング講座(152) ゲーム プログラミング チュートリアル

プログラムデータベースの作成途中ですが、続きは別の機会にゆずり、今回からゲーム プログラミングの自主学習向けに、ゲーム プログラムのあれこれについて例題を設けながら説明していきたいと思います。

Small Basic は初心者向けのプログラミング言語です。入門用のチュートリアル(自学用の指導書)はここにあります。一通りプログラムが書けるようになったら、簡単なゲームを作ってみたくなるのではないかと思います。ところが、ゲームを作るためのチュートリアルがありません。そこで、少しずつ作っていこうと思います。Small Basic で作れる簡単なものを取り上げていく予定です。

まずはテキストベースのゲームということでじゃんけんゲームから始めます。ここではじゃんけんゲームを通してテキストベースの簡単なゲームの作り方を学びます。

メインループを作る

以下のリストはじゃんけんゲームのメインループです。ループ以外をサブルーチンにすることでメイン部全体が見やすくなっています。

' Rock Paper Scissors
Init()
While "True"
 CPU()
 You()
 Judge()
EndWhile

ループの外に出せるものを出す

ループの中では繰り返しじゃんけんを行いますが、毎回のじゃんけん毎に設定しなくてもプログラムの最初に設定しておけばよいものを初期化処理 Init としてまとめました。ぐー(Rock)、ちょき(Scissors)、ぱー(Paper)などのテキストを入力するのではなく数字の1から3を入力すればいいように、変換用の配列を用意しました。また、勝敗の判定は If-Then-ElseIf-Else-EndIf を組み合わせるのではなく、配列を使って簡単にできるようにしました。

Sub Init
 hand = "1=Rock;2=Paper;3=Scissors;"
 judge["Rock"] = "Rock=Draw;Paper=Win;Scissors=Lose;"
 judge["Paper"] = "Rock=Lose;Paper=Draw;Scissors=Win;"
 judge["Scissors"] = "Rock=Win;Paper=Lose;Scissors=Draw;"
EndSub

乱数を使う

ゲームで特にCPU側の処理のことをゲームAI(Artificial Intelligence - 人工知能)と呼びます。AIの処理の中で動きをランダムにするために、乱数はよく使われます。Small Basic では Math.GetRandomNumber() 操作を使います。引数には自然数 n を指定します。1 から n までのうち、いずれかの自然数が返されます。じゃんけんなので 1 から 3 の乱数を発生させます。

Sub CPU
 n = Math.GetRandomNumber(3)
 cpu = hand[n]
EndSub

(つづく)

|

« プログラミング講座(151) UI の変更 | トップページ | プログラミング講座(153) じゃんけんゲーム »

Small Basic」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: プログラミング講座(152) ゲーム プログラミング チュートリアル:

« プログラミング講座(151) UI の変更 | トップページ | プログラミング講座(153) じゃんけんゲーム »