入力待ちの方法について RSSフィード
 

ツリー全部最新の50件前後を読む

3chamekanchamekan   2  Re:Re:入力待ちの方法について

すみません。

Mage's Mazeは、ペン入力がないと、ゲームが進行しないですよね?

(違う例としては、リアルタイムでかつ、ペン入力で意思表示というパターンもある)

ブロック崩しの場合、入力とは関係なくリアルタイムに進む必要があったんで、ちと、行儀の悪い作法になっています。

Mage's Mazeの場合は、スケルトンで生成されたmainFormEventHandler関数にイベント処理書いていくほうがいいかもしれません。

以下のような部分。

/*

* Event handler for the main form.

*/

  static Boolean

mainFormEventHandler(EventPtr pEvent)

{

  Boolean handled = false;

  FormPtr pForm = FrmGetActiveForm();

  switch (pEvent->eType)

  {

  case frmOpenEvent: // Form's 1st event

    FrmDrawForm(pForm);

    mainFormInit(pForm);

    handled = true;

    break;

  // *** ADD EVENT HANDLING HERE *** //

  default:

    break;

  }

  return handled;

}

えーと、これの「// *** ADD EVENT HANDLING HERE *** //」というところありますよね。イベントハンドリングはここに追加せよ、と書いてあるので、そこに、case文を追加して、

case PenDownEvent:

ほげほげ

case PenMoveEvent:

ほげほげ

case PenUpEvent:

ほげほげ

と書くと。

これは、システムとかメニューとかの処理が終わって、「FrmDispatchEvent (&event);」のところで、対応したフォームに紐付けた関数(この場合上記関数)が実行されます。

返信2005/06/21 08:55:09
  • 3Re:Re:入力待ちの方法について chamekanchamekan 2005/06/21 08:55:09
    すみません。 Mage's Mazeは、ペン入力がないと、ゲームが進行しないですよね? (違う例としては、リアルタイムでかつ、ペン入力で意思表示というパターンもある) ブロック崩しの場合、入力と ...
    • 4Re:Re:Re:入力待ちの方法について chamekanchamekan 2005/06/21 09:11:06
      あと、 wait4TapFを、trueにしているところがあるのかな? ともあれ、ペンイベントは、PalmOSの根幹なんで、あんまり横取りしないほうがいいので、システムとかがペンイベントを処 ...
    • 5Re:Re:Re:入力待ちの方法について alg-ljalg-lj 2005/06/21 10:58:16
      説明不足ですみません。 mainFormEventHandlerや他のフォーム用のEventHandler(itemFormEventHandler、mapFormEventHandler、batt ...