今のさしみゲーに何が足りないか。
それはタイトル画面なのではないかと思いました。タイトル画面のないゲームってないですよね。というわけでつけてみました。
今回のポイント
シーン間の移動
void StartGame() { Application.LoadLevel("Game"); }
Application.LoadLevel
の引数にシーン名を与えることでシーン間を遷移することができます。
実行すると即座に切り替わってしまうので、トランジションなどの演出を加えたい場合は一工夫する必要があります。例えば白くフェードしたい場合は、画面全体に白いスプライトを描画して、このスプライトのアルファをいじってあげればいいですね。とはいえ結構めんどいので、ライブラリ的なコードを書いて使い回すのが吉かも。

ビルド時にゲーム中で使っているシーンを全て含めておくのも忘れずに。一番上のシーンが一番最初に実行されるので、タイトル画面は一番上に設定する必要があります。
ボタンの処理
アフロ先生のコードを拝借しました。
特筆すべきはtargetObject.SendMessage(messageName);
の部分でしょう。これによりゲームオブジェクトに設定したスクリプトで定義してある任意のメソッドを実行することができます。Rubyのsend
みたいなイメージ。

上の例は「はじめる」ボタンをタップすると、TitleControllerというゲームオブジェクトのStartGame
メソッドを呼び出すというものです。わざわざハードコードせずに、画面上の設定で実装できるようなスクリプトを用意できると便利ですねー。
ちなみにSendMessage
はC#の組み込みメソッドではなく、UnityのGameObjectクラスのメソッドです(参照)。
他に足りないもの・・・あっ
このゲーム、終わりがないですね・・・。しかし終わりがないのがコンセプトのゲームなので、次はギブアップとスコアの保存ができるようにしましょう。まだまだ続くのじゃ。