Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

C++Builder 10.2 TokyoでレトロなラケットゲームをiOSで再構築してみる

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2017/12/21 14:00

目次

スタートボタンとストップボタンイベント

 デザイン画面からStartButtonとStopButtonのOnClickイベントハンドラを作成し、コードを記述します。ここには、スコアやラケット数の初期化をするためのコードを追加します。

//スタートボタンイベントハンドラ
void __fastcall TGameForm::StartButtonClick(TObject *Sender)
{
    // 乱数の初期化
    Randomize();
    // ボールの最初の角度を設定
    FAng = Random(45) + 90;

    // スコアとラケット数の初期化
    Score = 0;
    RacketCount = 5;
    // ボールの初速
    FSpeed = 15.0;
    // ボールの最初の位置
    Ball->Position->X = Court->Width / 2;
    Ball->Position->Y = Court->Height / 3;
    // 移動量を計算
    CalcNewDelta();
    // ボールを表示
    Ball->Visible = true;
    // タイマーを動作させる
    Timer1->Enabled = true;
    // ボタンの状態変更
    StartButton->Enabled = false;
    StopButton->Enabled = true;

}

//ストップボタンイベントハンドラ
void __fastcall TGameForm::StopButtonClick(TObject *Sender)
{
    // タイマーの停止
    Timer1->Enabled = false;

    // ボタンの状態変更
    StartButton->Enabled = true;
    StopButton->Enabled = false;
}

 以上でコーディングは終了です。

配置と実行

MP3サウンドファイルの配置

 さて、アプリをビルドする前に、iOSにMP3サウンドファイルを配置するように設定しなければなりません。サウンドファイルは壁音用「wall.mp3」とラケット音用「racket.mp3」の2つです。

 メニューから[プロジェクト|配置]を選択すると図のように配置ファイルリストが表示されます。ツールバーの[ファイルの追加]アイコンをクリックすると、ファイル選択ダイアログが表示されるので、「wall.mp3」と「racket.mp3」を順番に選択して追加します。

 その後、リストに加えられた新しい2つのサウンドファイルの「リモートパス」を指定します。指定する名称は「SetUp\Documents\」です。

図13 配置ファイルリスト
図13 配置ファイルリスト

アプリを実行する

 作成したアプリをiPhoneで実行するには、PAServerという機能を使います。iOSアプリの場合、ビルドに必ずMacマシンが必要です。MacマシンにPAServerをインストールしておくことで、C++BuilderのIDEから、Macにアプリを転送し、このMacに接続されたiPhoneへとアプリを配置、起動します。

 つまり、IDEからは、実行ボタンをクリックするだけで、ビルド、転送、配置、実行(必要に応じてデバッグも)できるのです。次のように、iPhone上でアプリが実行されます。

図14 iPhoneでアプリを実行
図14 iPhoneでアプリを実行

 以上でiOS向けのラケットゲームは完成です。C++Builder + FireMonkeyなら、同じアプリを容易にAndroid向けにもビルドできます。



  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • EDN編集部(イーディーエヌ編集部)

    エンバカデロ・デベロッパーネットワーク(EDN)は、ソフトウェア開発者とデータベース技術者のための技術情報サイトです。Delphi、C++Builderをはじめとする開発ツールやER/Studioなどのデータベースツールに関連する技術記事、ビデオなどを提供しています。EDN編集部は、EDN記事と連携...

バックナンバー

連載:EDN CodeZine出張所

もっと読む

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5