DOJAで赤外線通信による2人対戦ゲームを作りたいのですが
DOJA3.0をベースに、ドコモ携帯用iアプリゲームを作成中ですが、難問につまずきました。
DOJAには赤外線通信APIというものがあって、2台の携帯でデータやり取りが出来る・・・この機能を生かし、携帯電話2台を向かい合わせて二人で対戦するリアルタイムゲーム(スポーツや格闘モノなど。プレイ中相手方のキー入力状態を通信で絶え間なく監視するタイプのもの)を作ってみたいのです。しかし・・・
int op;
ServerObexConnection c=null;
c=(ServerObexConnection)Connector.open( //通信準備(サーバ側)
"obex:/irserver",Connector.READ_WRITE,true);
c.accept();
・
・
if (op==ObexConnection.DISCONNECT)c.close();
c.accept()(クライアント側はconnect)で赤外線ポートに通電したあとc.close()を実行するまでの間、ずっと「通信中」というダイアログが画面全体に現れ、描画キャンパスを覆ってしてしまいます。
セキュリティのため強制動作しているのでしょうが、これでは肝心のゲーム画面が全く見えません。
c.close()で通信を終えるとダイアログは消えゲーム画面が見えるようになります。しかし再接続すると、通信確認ダイアログが開きます。まさか1フレーム動作毎にダイアログを開いたり閉じたりというゲームを作るわけにはいかないでしょう。
対戦ボードゲーム(オセロや将棋など)の場合でも、一手打つたび毎回ダイアログを表示するソフトは実用にならないでしょう。
赤外線通信対戦ゲームのサンプルが載っている書籍のリストによると、ゲーム開始直後に通信でデータ交換をし、その後切断してプレイ終了まで再接続はしない、というものでした。
DOJAの通信は、もしかしてこれが限界なのでしょうか?ダイアログを非表示にする・うまくごまかす方法などはないのでしょうか。データ受け渡しスピードや精度は高かったので、ケータイは赤外線通信対戦リアルタイムゲームが作れる性能は充分と思うのですが・・
赤外線通信といえば、ゲームボーイの通信対戦ケーブルが無線になったようなもの・・・と思っていたのですが、そのようなアプリを作るのは無理なのでしょうか?
DOJA(または、携帯用iアプリ作成)の詳しいプログラミング情報交換ができる掲示板・携帯のデータ通信アプリ作成方法に詳しいWEBなどわずかな情報でもよいです。かなり悩んでおりますので、どうかよろしくお願いします。
お礼
有りました! 有りました! 場所が全然違ってたんですね どうりで無いわけだ。 ありがとうございます。