==============================================================================
  ＳＦＸＶＩ Version 4.2 対応 標準ＡＰＩ Release 13        (C)T.Soeno  1997.12
------------------------------------------------------------------------------
                  ドキュメント「ＡＰＩ関数リファレンス」
------------------------------------------------------------------------------

..............................................................................
１．本書の内容

    追加データのコントローラはＡＰＩライブラリを経由してシステムのサービスを利
  用します。コントローラのソース・プログラムではＡＰＩライブラリの提供する機能
  を関数コールの形式で呼び出します。本書はＡＰＩライブラリの提供するＡＰＩ関数
  のリファレンス・マニュアルです。

..............................................................................
２．前提知識

    本書で使用する以下の名称の意味を示します。

      ・ ユーザ   ： 追加データを開発する人
      ・ システム ： ＳＦＸＶＩの実行の仕組みの全体を管理するプログラム

    また、各ＡＰＩ関数のリファレンスにおいては次の形式で説明を行います。

　　　　戻り値の型  ＡＰＩ関数名( 引数リスト )

  　　　　戻り値  戻り値の内容の説明
  　　　　引数    引数名と内容の説明
　　　　  説明    このＡＰＩ関数が提供する機能の説明
　　　　  技術    このＡＰＩ関数に関連するシステムおよびハードウェア寄りの説明。
　　　　  関連    このＡＰＩ関数と関連性のある項目
　　　　          （f：関数, m：マクロ, t：データ型）

        , ：排他 （例：A,B   →  A または B ）
        〜：連続 （例：A〜B  →  A 以上 B 以下の整数値 ）

..............................................................................
３．キャラクタの登録に関する操作

    キャラクタをシステムに登録し、システムのカレント・キャラクタに設定します。
  この手続きは main() 内で必ず必要です。


void  同期開始_キャラ登録( int argc, char *argv[], char *message )

  引数    argc  main()の第１引数
          argv  main()の第２引数
          message  バージョン情報
  説明    キャラのシステム登録処理を開始します。main() の先頭で必ず実行して下
          さい。argc, argv には main() に渡された引数をそのまま指定します。
          message には、このキャラ・モジュールがコマンドラインから直接実行され
          た時に標準出力する文字列を指定します。
  関連    同期完了_キャラ登録 (f)


void  同期完了_キャラ登録()

  説明    キャラのシステム登録処理を終了します。main() の最後で必ず実行して下
          さい。
  関連    同期開始_キャラ登録 (f)


..............................................................................
４．キャラの初期属性に関する操作

    キャラの初期属性はゲーム中に動的に変更されることが基本的になく、また
  デフォルト処理関数から参照されている情報です。


４−１．属性の設定


void  属性設定_歩行速度( int p, short speed )

  引数    p  キャラクタ・ハンドラ
          speed  速度（1：遅い, 2：普通, 3：速い）
  説明    身体の歩行速度を設定します。ここで言う速度は、p のデフォルトＳＵＢ
          関数 'SUB_前方歩行' および 'SUB_後方歩行' のプログラムに基づいたもの
          であり、これれらのＳＵＢ関数を上書きすることで実際のキャラの移動速度
          を変えることもできます。
  関連    属性取得_歩行速度 (f)
          SUB_前方歩行 (m)
          SUB_後方歩行 (m)


void  属性設定_地上投げ威力( int p, short i, short damage )

  引数    p  キャラクタ・ハンドラ
          i  間合いのドット数（-512〜511）
          damage  ダメージ（0〜32767）
  説明    p の「地上投げ」動作の攻撃力を設定します。相手との間合いが i ドット
          以内のとき、ダメージ damage を与える地上投げを行えるように設定されま
          す。設定した値は、デフォルトＶＣＴ関数 'VCT_投げ技コマンド判定処理'
          で参照されています。
  関連    属性取得_地上投げ威力 (f)
          VCT_投げ技コマンド判定処理 (m)


void  属性設定_空中投げ威力( int p, short ih, short iv, short damage )

  引数    p  キャラクタ・ハンドラ
          ih  水平方向の間合いのドット数（-512〜511）
          iv  垂直方向の間合いのドット数（-512〜511）
          damage  ダメージ（0〜32767）
  説明    p の「空中投げ」動作の攻撃力を設定します。相手との水平方向の間合いが
          ih ドット以内でかつ垂直方向の間合いが iv ドット以内のとき、ダメージ
          damage を与える空中投げを行えるように設定されます。設定した値は、
          デフォルトＶＣＴ関数 'VCT_投げ技コマンド判定処理' で参照されていま
          す。
  関連    属性取得_空中投げ威力 (f)
          VCT_投げ技コマンド判定処理 (m)


void  属性設定_シューティング( int p, short mode )

  引数    p  キャラクタ・ハンドラ
          mode  モード（ON,OFF）
  説明    p のキャラスタイルを設定します。mode=ON で「シューティングタイプ」、
          mode=OFF で「格闘タイプ」となります。デフォルトの設定は「格闘タイプ
          」です。
  関連    属性取得_シューティング (f)


４−２．属性の取得


short  属性取得_歩行速度( int p )

  戻り値  速度（1：遅い, 2：普通, 3：速い）
  引数    p  キャラクタ・ハンドラ
  説明    p の身体の歩行速度を取得します。属性設定_歩行速度() の設定値がその
          まま返ります。
  関連    属性設定_歩行速度 (f)


short  属性取得_地上投げ威力( int p )

  戻り値  ダメージ（0〜32767）
  引数    p  キャラクタ・ハンドラ
  説明    p の「地上投げ」動作のダメージ量を取得します。
  関連    属性設定_地上投げ威力 (f)


short  属性取得_空中投げ威力( int p )

  戻り値  ダメージ（0〜32767）
  引数    p  キャラクタ・ハンドラ
  説明    p の「空中投げ」動作のダメージ量を取得します。
  関連    属性設定_空中投げ威力 (f)


short  属性取得_シューティング( int p )

  戻り値  ON（シューティングタイプ）, OFF（格闘タイプ）
  引数    p  キャラクタ・ハンドラ
  説明    p のキャラスタイルを取得します。
  関連    属性設定_シューティング (f)


４−３．ＣＰＵ思考パラメータの設定

    ＣＰＵ思考パラメータは、キャラがＣＰＵ制御されているときのＣＰＵ関数におけ
  る思考処理のパラメータとして参照される情報です。


void  Prm設定_CPU_直立攻撃キャンセル率( int p, short s, short a )

  引数    p  キャラクタ・ハンドラ
          s  実行確率（0〜32767）
          a  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          'ACT_直立攻撃?' をキャンセルしたとき、まず確率 a で 'ACT_必殺技Ａ'
          を出し、それにもれた場合は確率 s で 'ACT_必殺技Ｓ' を出します。これ
          にももれた場合は 'ACT_必殺技Ｍ' が出ます。確率は値が大きいほど高くな
          ります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_座り攻撃キャンセル率( int p, short s, short a )

  引数    p  キャラクタ・ハンドラ
          s  実行確率（0〜32767）
          a  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          'ACT_座り攻撃?' をキャンセルしたとき、まず確率 s で 'ACT_必殺技Ｓ'
          を出し、それにもれた場合は確率 a で 'ACT_必殺技Ａ' を出します。これ
          にももれた場合は 'ACT_必殺技Ｍ' が出ます。確率は値が大きいほど高くな
          ります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_対気絶攻撃( int p, short type, short level )

  引数    p  キャラクタ・ハンドラ
          type  動作内容（'A','S','M','J','D'）
          level  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          相手が「気絶」している時の p の行動を指定します。
      　　　  type = 'A'：ACT_必殺技Ａ, 'S'：ACT_必殺技Ｓ, 'M'：ACT_必殺技Ｍ,
　　　               'J'：ACT_ジャンプ, 'D'：ACT_地上防御 or ACT_空中防御
    　　　type が 'J' か 'D' の場合、level は意味を持ちません。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_対座り攻撃( int p, short type, short level )

  引数    p  キャラクタ・ハンドラ
          type  動作内容（'A','S','M','J','D'）
          level  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          相手が目の前で「座り攻撃」を出してきた時の p の行動を指定します。
      　　　  type = 'A'：ACT_必殺技Ａ, 'S'：ACT_必殺技Ｓ, 'M'：ACT_必殺技Ｍ,
　　　               'J'：ACT_ジャンプ, 'D'：ACT_地上防御 or ACT_空中防御
    　　　type が 'J' か 'D' の場合、level は意味を持ちません。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_対近Ｓ攻撃( int p, short type1, short level1,
                                             short type2, short level2 )

  引数    p  キャラクタ・ハンドラ
          type1  動作内容（'A','S','M','J','D'）
          level1  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
          type2  動作内容（'A','S','M','J','D'）
          level2  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          相手が目の前で 'ACT_必殺技Ｓ' を出してきた時の p の行動を２種類指定
          します。
      　   type1,2 = 'A'：ACT_必殺技Ａ, 'S'：ACT_必殺技Ｓ, 'M'：ACT_必殺技Ｍ,
　　　               'J'：ACT_ジャンプ, 'D'：ACT_地上防御 or ACT_空中防御
    　　　type が 'J' か 'D' の場合、level1,2 は意味を持ちません。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_対遠Ｓ攻撃( int p, short type1, short level1,
                                             short type2, short level2 )

  引数    p  キャラクタ・ハンドラ
          type1  動作内容（'A','S','M','J','D'）
          level1  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
          type2  動作内容（'A','S','M','J','D'）
          level2  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          相手が遠くで 'ACT_必殺技Ｓ' を出してきた時の p の行動を２種類指定
          します。
      　   type1,2 = 'A'：ACT_必殺技Ａ, 'S'：ACT_必殺技Ｓ, 'M'：ACT_必殺技Ｍ,
　　　               'J'：ACT_ジャンプ, 'D'：ACT_地上防御 or ACT_空中防御
    　　　type が 'J' か 'D' の場合、level1,2 は意味を持ちません。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_対近空攻撃( int p, short type, short level, short r )

  引数    p  キャラクタ・ハンドラ
          type  動作内容（'A','S','M','J','D'）
          level  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
          r  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          相手が頭の上で「空中攻撃」を出してきた時の p の行動を指定します。
      　　　  type = 'A'：ACT_必殺技Ａ, 'S'：ACT_必殺技Ｓ, 'M'：ACT_必殺技Ｍ,
　　　               'J'：ACT_ジャンプ, 'D'：ACT_地上防御 or ACT_空中防御
    　　　type が 'J' か 'D' の場合、level は意味を持ちません。確率は値が大き
    　　　いほど低くなります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_対中空攻撃( int p, short type, short level, short r )

  引数    p  キャラクタ・ハンドラ
          type  動作内容（'A','S','M','J','D'）
          level  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
          r  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          相手が目の前で「空中攻撃」を出してきた時の p の行動を指定します。
      　　　  type = 'A'：ACT_必殺技Ａ, 'S'：ACT_必殺技Ｓ, 'M'：ACT_必殺技Ｍ,
　　　               'J'：ACT_ジャンプ, 'D'：ACT_地上防御 or ACT_空中防御
    　　　type が 'J' か 'D' の場合、level は意味を持ちません。確率は値が大き
    　　　いほど低くなります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_近攻撃座り率( int p, short r )

  引数    p  キャラクタ・ハンドラ
          r  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          p が 'ACT_直立攻撃?' を出す場合に、あえて 'ACT_座り攻撃?' に切り替え
          る確率を指定します。確率は値が大きいほど高くなります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_必殺技Ｓ小率( int p, short r )

  引数    p  キャラクタ・ハンドラ
          r  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          p が 'ACT_必殺技Ｓ' を出す場合に攻撃力を 'LEVEL_小' に設定する確率
          を指定します。確率は値が大きいほど高くなります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_必殺技Ａ小率( int p, short r )

  引数    p  キャラクタ・ハンドラ
          r  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          p が 'ACT_必殺技Ａ' を出す場合に攻撃力を 'LEVEL_小' に設定する確率
          を指定します。確率は値が大きいほど高くなります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_必殺技Ｍ小率( int p, short r )

  引数    p  キャラクタ・ハンドラ
          r  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          p が 'ACT_必殺技Ｍ' を出す場合に攻撃力を 'LEVEL_小' に設定する確率
          を指定します。確率は値が大きいほど高くなります。
  関連    Cpu取得_CPU情報 (f)


void  Prm設定_CPU_空中必殺小率( int p, short r )

  引数    p  キャラクタ・ハンドラ
          r  実行確率（0〜32767）
  説明    p がＣＰＵ制御されている時に参照される標準パラメータを設定します。
          p が 'SUB_空中必殺' を出す場合に攻撃力を 'LEVEL_小' に設定する確率
          を指定します。確率は値が大きいほど高くなります。
  関連    Cpu取得_CPU情報 (f)


..............................................................................
５．メッセージマップに関する操作


５−１．動作関数の登録

    キャラの動作関数をメッセージマップに登録します。この操作は "OPT_初期化"
  メッセージのＯＰＴ関数で実行して下さい。ただし、"OPT_初期化"メッセージの
  ＯＰＴ関数だけは main() の中で登録することが許されています。


void  Mmp登録_動作関数( int p, short mmp_type, short msg_id, void (*func)() )

  引数    p  キャラクタ・ハンドラ
          mmp_type  メッセージタイプ（MMP_TYPE_...）
          msg_id  メッセージID
                  （ACT-ID,SUB-ID,OPT-ID,VCT-ID,CPU-ID,INI-ID,SYS-ID）
          func  動作関数
  説明    p がメッセージ msg_id を受信した時に実行される動作関数をメッセージ
          マップに登録します。mmp_type には msg_id のタイプに応じて以下のいず
          れかを指定します。
              MMP_TYPE_ACT
              MMP_TYPE_SUB
              MMP_TYPE_OPT
              MMP_TYPE_VCT
              MMP_TYPE_CPU
              MMP_TYPE_INI
              MMP_TYPE_SYS
          ただし、通常のキャラは 'MMP_TYPE_SYS' を指定することはできません。
          func には動作関数を指定します。
  関連    Mmp登録_動作関数２ (f)
          MMP_TYPE_... (m)
          ACT_... (m)
          SUB_... (m)
          OPT_... (m)
          VCT_... (m)
          CPU_... (m)
          INI_... (m)
          SYS_... (m)


void  Mmp登録_動作関数２( int p, short mmp_type, MMP_FUNC_LIST *list )

  引数    p  キャラクタ・ハンドラ
          mmp_type  メッセージタイプ（MMP_TYPE_...）
          list  動作関数リストへのポインタ
  説明    p がメッセージを受信した時に実行される動作関数をメッセージマップに
          登録します。Mmp登録_動作関数() との違いは、メッセージID と動作関数の
          対応リストを指定することで複数の組み合わせを一回で登録処理できる所で
          す。mmp_type には list に含まれるメッセージID のタイプに応じて以下の
          いずれかを指定します。
              MMP_TYPE_ACT
              MMP_TYPE_SUB
              MMP_TYPE_OPT
              MMP_TYPE_VCT
              MMP_TYPE_CPU
              MMP_TYPE_INI
              MMP_TYPE_SYS
          ただし、通常のキャラは 'MMP_TYPE_SYS' を指定することはできません。
          なお、１つの動作関数リストの中に複数タイプのメッセージID を混在させ
          ることはできません。
  関連    Mmp登録_動作関数 (f)
          MMP_TYPE_... (m)
          MMP_FUNC_LIST (t)
          END_OF_MFL (m)


..............................................................................
６．キャラの身体の状態に関する操作

    キャラは、場面や動作の内容によって動的に変化する「状態」という情報を持って
  います。この「状態」を操作することで、キャラの動きや性質に変化を与えることが
  できます。


６−１．状態の設定


void  状態設定_表示方向( int p, short drct )

  引数    p  キャラクタ・ハンドラ
          drct  方向（DRCT_右,DRCT_左）
  説明    p の身体の表示方向を drct に設定します。表示方向とは、セルを表示する
          方向のことで、ラウンド開始直後は１Ｐ側は 'DRCT_右' 、２Ｐ側は
          'DRCT_左' が設定されています。
  関連    状態取得_表示方向 (f)


void  状態設定_ジャンプ方向( int p, short drct )

  引数    p  キャラクタ・ハンドラ
          drct  方向（DRCT_前,DRCT_中,DRCT_後）
  説明    p の「ジャンプ」動作の方向を drct に設定します。
  関連    状態取得_ジャンプ方向 (f)
          ACT_ジャンプ (m)
          SUB_ＪＵＭＰ (m)


void  状態設定_しゃがみ( int p, short mode )

  引数    p  キャラクタ・ハンドラ
          mode  しゃがみ状態（ON,OFF）
  説明    p のしゃがみ状態を設定します。システムは p を mode=ON ならば
          「しゃがんだ状態」、mode=OFF ならば「立ち状態」と解釈します。
  関連    状態取得_しゃがみ (f)
          SUB_しゃがむ (m)


void  状態設定_燃焼( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  燃焼持続サイクル数（0〜32767）
  説明    p の身体の燃焼状態を設定します。num には今後燃焼し続けるサイクル数を
          指定します。num=0 を指定すると燃焼を止めることができます。
  関連    状態取得_燃焼 (f)
          VCT_燃焼処理 (m)


void  状態設定_無敵( int p, short ivc, short num )

  引数    p  キャラクタ・ハンドラ
          ivc  無敵状態（IVC_通常,IVC_無敵,IVC_ゾンビ）
          num  継続サイクル数（0〜32767）
  説明    p の無敵状態を設定します。ivc には無敵状態を指定します。num には無敵
          状態の継続サイクル数を指定でき、システムは num サイクル後に p の無敵
          状態を 'IVC_通常' に設定します。num=0 を指定した場合は無敵状態は継続
          され続けます。ivc=IVC_通常 の時は num は意味を持ちませんので 0 を
          指定して下さい。
  関連    状態取得_無敵 (f)
          IVC_... (m)


void  状態設定_振動( int p )

  引数    p  キャラクタ・ハンドラ
  説明    現在のサイクルで表示される p のセルを左右に振動させます。ただし、
          振動するのは表示上だけなので、当たり判定の範囲などは何も変化しませ
          ん。この関数は、連続したサイクルで実行し続けないと振動しているように
          は見えませんので注意して下さい。


void  状態設定_起き上がり必殺技許可( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の「起き上がり必殺技」の許可状態を設定します。「起き上がり」動作中
          にのみ有効で、この関数を実行したサイクルは「起き上がり」動作を必殺技
          コマンドでキャンセルすることができるようになります。（すなわち、
          Cmd条件_地上必殺技() などの関数が「起き上がり」動作中でも ON を返す
          ようになるということです。）
  関連    Cmd条件_地上必殺技 (f) など
          ACT_起き上がり (m)


void  状態設定_防御許可( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p を防御可能な状態にします。通常、p の防御可能状態の設定はシステムが
          p の相手の攻撃状態に応じて設定しますが、攻撃状態に関係なく防御許可を
          制御したい場合にこの関数を使用します。


void  状態設定_残り体力( int p, short damage, short faint )

  引数    p  キャラクタ・ハンドラ
          damage  ダメージ量（0〜32767）
          faint  気絶度（0〜32767）
  説明    p の残り体力を設定します。指定は現在の残り体力からの相対的な変化量に
          なります。damage には体力ゲージの減少量を指定します。faint には気絶
          度の増加量を指定します。通常、残り体力の制御はシステムがヒット情報を
          もとに行いますので、この関数は特別な理由がない限り使用しません。
  関連    状態取得_残り体力 (f)
          VCT_与ダメージ量調整処理 (m)


void  状態設定_セル前面表示( int p, short front )

  引数    p  キャラクタ・ハンドラ
          front  前面指示（ON,OFF）
  説明    p のセルの表示優先度を設定します。front=ON のとき、p のセルが相手の
          セルよりも前面に表示されるようになります。front=OFF を指定すると、
          相手のセルよりも後面に表示されます。この関数を実行しなければ、シス
          テムが適切に表示面を設定します。
  関連    セル設定_表示 (f)


６−２．状態の取得


short  状態取得_動作( int p )

  戻り値  ACT-ID
  引数    p  キャラクタ・ハンドラ
  説明    p の動作状態を取得します。p の現在の動作を ACT-ID で知ることができ
          ます。
  関連    Cmd実行_地上基本技 (f)
          Cmd実行_動作 (f) など
          ACT_... (m)


short  状態取得_複合動作( int p )

  戻り値  ON（実行している）, OFF（実行していない）
  引数    p  キャラクタ・ハンドラ
  説明    p の複合動作の実行状態を取得します。複合動作とは ACT-ID で示される
          動作と平行して実行される動作のことで、SUB-ID で示されます。例えば
          「ジャンプ」動作中に行う攻撃動作はすべて複合動作です。
  関連    Cmd実行_空中基本技 (f) など
          SUB_... (m)


short  状態取得_表示方向( int p )

  戻り値  方向（DRCT_右,DRCT_左）
  引数    p  キャラクタ・ハンドラ
  説明    p の身体の表示方向を取得します。表示方向とは、セルを表示する方向の
          ことで、ラウンド開始直後は１Ｐ側は 'DRCT_右' 、２Ｐ側は 'DRCT_左' が
          設定されています。


short  状態取得_相対方向( int p )

  戻り値  方向（DRCT_右,DRCT_左）
  引数    p  キャラクタ・ハンドラ
  説明    p の相対方向を取得します。相対方向とは、相手の身体座標に相対した方向
          のことで、相対方向と表示方向は必ずしも一致しません。


short  状態取得_動作方向( int p )

  戻り値  方向（DRCT_右,DRCT_左）
  引数    p  キャラクタ・ハンドラ
  説明    p の動作方向を取得します。動作方向とは、p の移動している方向のこと
          です。


short  状態取得_ジャンプ方向( int p )

  戻り値  方向（DRCT_前,DRCT_中,DRCT_後）
  引数    p  キャラクタ・ハンドラ
  説明    p のジャンプ方向を取得します。ジャンプ方向とは、「ジャンプ」動作の
          向きのことで、「前後」で表現します。'DRCT_中' は垂直ジャンプである
          ことを意味します。p が「ジャンプ」動作していない時の戻り値は無意味
          です。
  関連    状態設定_ジャンプ方向 (f)


short  状態取得_しゃがみ( int p )

  戻り値  ON（しゃがんでいる）, OFF（しゃがんでいない）
  引数    p  キャラクタ・ハンドラ
  説明    p のしゃがみ状態を取得します。
  関連    状態設定_しゃがみ (f)


short  状態取得_燃焼( int p )

  戻り値  燃焼状態（0〜32767）
  引数    p  キャラクタ・ハンドラ
  説明    p の身体の燃焼状態を取得します。燃焼状態とは、今後燃焼し続ける最多
          サイクル数のことで、0 ならば燃焼していないことになります。
  関連    状態設定_燃焼 (f)


short  状態取得_無敵( int p )

  戻り値  IVC_通常（無敵でない）, IVC_無敵（無敵）, IVC_ゾンビ（ゾンビ）
  引数    p  キャラクタ・ハンドラ
  説明    p の無敵状態を取得します。
  関連    状態設定_無敵 (f)


short  状態取得_攻撃くらい( int p )

  戻り値  ON（くらい状態）, OFF（くらい状態でない）
  引数    p  キャラクタ・ハンドラ
  説明    p の攻撃くらい状態を取得します。p の動作状態が「くらい」動作ならば
          ON を返します。


short  状態取得_変身( int p )

  戻り値  ON（変身している）, OFF（変身していない）
  引数    p  キャラクタ・ハンドラ
  説明    p の変身状態を取得します。


short  状態取得_防御許可( int p )

  戻り値  ON（防御可能）, OFF（防御不可能）
  引数    p  キャラクタ・ハンドラ
  説明    p が防御可能な状態かどうかを取得します。
  関連    状態設定_防御許可 (f)


short  状態取得_受け身( int p )

  戻り値  ON（受け身を行った）, OFF（受け身を行っていない）
  引数    p  キャラクタ・ハンドラ
  説明    p が受け身を行ったかどうかを取得します。この関数は、主に「投げられ」
          動作のＡＣＴ関数において、受け身による条件分岐を行う場合に使用しま
          す。
  関連    Cmd実行_受け身 (f)


short  状態取得_残り体力( int p )

  戻り値  残り体力（-1024〜88）
  引数    p  キャラクタ・ハンドラ
  説明    p の残り体力を取得します。残り体力が負数の場合は、現ラウンドの勝負に
          敗北したことを示しています。
  関連    状態設定_残り体力 (f)
          状態取得_敗北 (f)
          状態取得_勝ち数 (f)


short  状態取得_敗北( int p )

  戻り値  OFF（敗北していない）, ON（敗北した）
  引数    p  キャラクタ・ハンドラ
  説明    現ラウンドの p の敗北状態を取得します。
  関連    状態取得_残り体力 (f)
          状態取得_勝ち数 (f)


short  状態取得_勝ち数( int p )

  戻り値  勝ち数（0〜2）
  引数    p  キャラクタ・ハンドラ
  説明    現ステージの p の勝ち数を取得します。
  関連    状態設定_残り体力 (f)
          状態取得_敗北 (f)


short  状態取得_攻撃動作( int p )

  戻り値  ON（実行している）, OFF（実行していない）
  引数    p  キャラクタ・ハンドラ
  説明    p の動作状態が攻撃動作であるかどうかを取得します。
  関連    状態取得_複合攻撃動作 (f)


short  状態取得_複合攻撃動作( int p )

  戻り値  ON（実行している）, OFF（実行していない）
  引数    p  キャラクタ・ハンドラ
  説明    p の複合動作による攻撃の実行状態を取得します。複合動作とは ACT-ID
          で示される動作と平行して実行される動作のことで、SUB-ID で示されま
          す。例えば「ジャンプ」動作中に行う攻撃動作はすべて複合動作です。
  関連    Cmd実行_空中基本技 (f) など
          SUB_... (m)


short  状態取得_SHOT攻撃( int p )

  戻り値  ON（攻撃している）, OFF（攻撃していない）
  引数    p  キャラクタ・ハンドラ
  説明    p の SHOTモジュールによる攻撃状態を取得します。p が登録した
          SHOTモジュールの中で、現在の状態が 'SHOT_STATE_有効' でかつ特性が
          'SHOT_TYPE_弾丸' であるものが存在する場合、ON を返します。
  関連    SHOTのメンバ type (t)


..............................................................................
７．キャラの一般動作に関する操作


７−１．身体座標の設定

    画面上のキャラの表示位置を動かすにはキャラの身体座標を設定します。注意すべ
  きは、画面上のキャラの身体はセルと呼ばれる矩形に描かれた絵であり、身体座標は
  セルの矩形の左上座標を指すものであるという点です。


void  座標設定_移動( int p, short dx, short dy, short drct )

  引数    p  キャラクタ・ハンドラ
          dx  水平方向の移動量（-512〜511）
          dy  垂直方向の移動量（-512〜511）
          drct  水平基準方向（DRCT_前,DRCT_中,DRCT_後,DRCT_動作）
  説明    p の身体Ｘ座標を現座標から水平方向 drct に向けて dx ポイントだけ相対
          移動します。同時に p の身体Ｙ座標を現座標から下向きに dy ポイント
          だけ相対移動します。
  関連    座標設定_移動２ (f)
          座標設定_間合調節 (f)


void  座標設定_移動２( int p, short dx, short dy, short drct, short cnt )

  引数    p  キャラクタ・ハンドラ
          dx  水平方向の移動量（-512〜511）
          dy  垂直方向の移動量（-512〜511）
          drct  水平基準方向（DRCT_前,DRCT_中,DRCT_後,DRCT_動作）
          cnt  倍数指示（1〜32767）
  説明    p の身体Ｘ座標を現座標から水平方向 drct に向けて dx ポイントだけ相対
          移動します。同時に p の身体Ｙ座標を現座標から下向きに dy ポイント
          だけ相対移動します。座標設定_移動() との違いは、関数の実行回数が cnt
          の倍数になった時に dx が (dx+1) として処理される点です。この関数は、
          座標設定_移動() よりも滑らかな動きが必要な時に使用します。
  関連    座標設定_移動 (f)
          座標設定_間合調節 (f)


void  座標設定_Ｘ( int p, short x )

  引数    p  キャラクタ・ハンドラ
          x  絶対Ｘ座標（-512〜511）
  説明    p の現在表示しているセルの絶対Ｘ座標を設定します。
  関連    座標設定_Ｙ (f)
          座標取得_Ｘ (f)
          座標取得_Ｙ (f)


void  座標設定_Ｙ( int p, short y )

  引数    p  キャラクタ・ハンドラ
          y  絶対Ｙ座標（-512〜511）
  説明    p の現在表示しているセルの絶対Ｙ座標を設定します。p が格闘タイプの
          キャラの場合、y には BASE_LINE 以下の値を指定します。
  関連    座標設定_Ｘ (f)
          座標取得_Ｘ (f)
          座標取得_Ｙ (f)


void  座標設定_間合調節( int p, short dx )

  引数    p  キャラクタ・ハンドラ
          dx  水平方向の移動量（-512〜511）
  説明    p の身体Ｘ座標を現座標からセルの表示方向に向けて dx ポイントだけ相対
          移動します。ただし、p が画面の端に到達してしまいそれ以上水平移動でき
          ないときは、代わりに相手の身体Ｘ座標が p のセル表示方向の逆方向に向
          けて水平移動するようになります。この関数は、「くらい」動作など確実に
          間合いが開いてもらいたい動作で使用します。
  関連    座標設定_移動 (f)
          座標設定_移動２ (f)


７−２．身体座標の取得


short  座標取得_Ｘ( int p )

  戻り値  絶対Ｘ座標（-512〜511）
  引数    p  キャラクタ・ハンドラ
  説明    p の身体の絶対Ｘ座標を取得します。
  関連    座標設定_Ｘ (f)
          座標設定_Ｙ (f)
          座標取得_Ｙ (f)


short  座標取得_Ｙ( int p )

  戻り値  絶対Ｙ座標（-512〜511）
  引数    p  キャラクタ・ハンドラ
  説明    p の身体の絶対Ｙ座標を取得します。p のキャラスタイルが「格闘タイプ」
          の場合、p の身体が地上に接している時は BASE_LINE が返ります。
  関連    座標設定_Ｘ (f)
          座標設定_Ｙ (f)
          座標取得_Ｙ (f)


short  座標取得_相手距離( int p )

  戻り値  ポイント数（-512〜511）
  引数    p  キャラクタ・ハンドラ
  説明    p の身体矩形と相手の身体矩形の間隔をポイント数で取得します。ポイン
          ト数が負数の場合は相手が p の背後に存在することを意味します。
  関連    座標取得_Ｘ (f)


short  座標取得_複合攻撃点( int p, short ofs )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
          ofs  BASE_LINE からの相対Ｙ座標（0〜511）
  説明    「ジャンプ」動作中の p の絶対Ｙ位置が、BASE_LINE-ofs よりも大きい
          （すなわち地面に近い）ときに ON を返します。この関数は、ジャンプの
          高さで複合攻撃の出し方を決める場合などに使用します。
  関連    座標取得_Ｙ (f)


７−３．自動減少カウンタの操作


short  カウンタ設定_初期値( int p, short num )

  戻り値  設定後のカウンタ値（0〜32767）
  引数    p  キャラクタ・ハンドラ
          num  カウンタ初期値（0〜32767）
  説明    p の動作関数の最初のサイクルでこの関数を実行することで、カウンタ値を
          num で初期化します。最初のサイクルでないときは、現在のカウンタ値を
          -1 した値が設定されます。
  関連    カウンタ設定_値維持 (f)
          カウンタ設定_現在値 (f)
          カウンタ設定_値減少 (f)
          カウンタ取得_現在値 (f)


void  カウンタ設定_値維持( int p )

  引数    p  キャラクタ・ハンドラ
  説明    次のサイクルで カウンタ初期設定() を実行しても、p のカウンタ値が -1
          されないようにします。この関数は、ある条件を満たすまでカウンタ値を
          変化させないようなカウンタ操作を実現する場合に使用します。
  関連    カウンタ設定_初期値 (f)
          カウンタ設定_現在値 (f)
          カウンタ設定_値減少 (f)
          カウンタ取得_現在値 (f)


short  カウンタ設定_現在値( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  新しいカウンタ値（0〜32767）
  説明    p のカウンタ値を num に設定します。この関数は、カウンタ値を直接設定
          するため、自由なカウンタ操作を実現することができます。
  関連    カウンタ設定_初期値 (f)
          カウンタ設定_値維持 (f)
          カウンタ設定_値減少 (f)
          カウンタ取得_現在値 (f)


short  カウンタ設定_値減少( int p )

  戻り値  更新後のカウンタ値（0〜32766）
  引数    p  キャラクタ・ハンドラ
  説明    p のカウンタ値を -1 します。この関数は、カウンタ初期設定() とは違う
          タイミングでカウンタ値を -1 する必要がある場合に使用します。
  関連    カウンタ設定_初期値 (f)
          カウンタ設定_値維持 (f)
          カウンタ設定_現在値 (f)
          カウンタ取得_現在値 (f)


short  カウンタ取得_現在値( int p )

  戻り値  カウンタ値（0〜32767）
  引数    p  キャラクタ・ハンドラ
  説明    p の現在のカウンタ値を取得します。
  関連    カウンタ設定_初期値 (f)
          カウンタ設定_値維持 (f)
          カウンタ設定_現在値 (f)
          カウンタ設定_値減少 (f)


..............................................................................
８．キャラの各種動作におけるシステムとの同期操作

    キャラの動作は勝手に開始し勝手に終了して良いものではありません。必ず開始・
  終了をシステムに通知する必要があります。ただし、動作の種類によっては通知操作
  を省略しているものもあります。これはキャラのコーディングが間単になるように
  フレームワークが通知処理を隠しているからです。このようにシステムとキャラは
  互いに同期をとって動作しています。


８−１．「一般動作」関連


short  同期取得_先頭サイクル( int p, short act_id )

  戻り値  ON（先頭である）, OFF（先頭でない）
  引数    p  キャラクタ・ハンドラ
          act_id  ACT_ID
  説明    p の現在の動作状態が act_id であり、かつ act_id になってから先頭の
          サイクルであるかどうかを取得します。この関数は、例えば動作状態が
          act_id になった最初のサイクルで初期化処理をしたいがそのタイミングを
          取得できないような場所で使用します。
  関連    状態取得_動作 (f)
          ACT_... (m)


short  同期取得_動作過程( int p )

  戻り値  同期コード（SYNC_...）
  引数    p  キャラクタ・ハンドラ
  説明    p の動作の動作過程を取得します。動作過程とは、１つの動作の進行具合を
          示すシステム変数です。開始終了よりもさらに細かいステップをシステムが
          管理する必要があるキャラ動作において意味を持つ情報です。進行具合は
          同期コードで示されますが、同期コードの値の持つ意味は動作の種類により
          異なります。
  関連    SUB_しゃがむ (m)
          SUB_ＪＵＭＰ (m)
          SYNC_... (m)


void  同期進行_動作過程( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の動作の動作過程を進行します。動作過程とは、１つの動作の進行具合を
          示すシステム変数です。開始終了よりもさらに細かいステップをシステムが
          管理する必要があるキャラ動作において意味を持つ情報です。進行具合は
          同期コードで示されますが、同期コードの値の持つ意味は動作の種類により
          異なります。
  関連    SUB_しゃがむ (m)
          SUB_ＪＵＭＰ (m)
          SYNC_... (m)


void  同期完了_一般動作( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在の動作（攻撃以外）の「終了」をシステムに通知します。システム
          はこれを受けると、p の次サイクルからの動作状態が 'ACT_アイドル' にな
          るように処理します。この関数は、一般動作のＡＣＴ関数の最後のサイクル
          で必ず実行して下さい。
  関連    同期完了_攻撃 (f) など


８−２．「攻撃動作」関連


short  同期取得_攻撃過程( int p )

  戻り値  同期コード（SYNC_...）
  引数    p  キャラクタ・ハンドラ
  説明    p の攻撃動作の動作過程を取得します。動作過程とは、１つの動作の進行
          具合を示すシステム変数です。開始終了よりもさらに細かいステップを
          システムが管理する必要があるキャラ動作において意味を持つ情報です。
          進行具合は同期コードで示されますが、同期コードの値の持つ意味は動作の
          種類により異なります。
  関連    SYNC_... (m)


void  同期進行_攻撃過程( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の攻撃動作の動作過程を進行します。動作過程とは、１つの動作の進行
          具合を示すシステム変数です。開始終了よりもさらに細かいステップを
          システムが管理する必要があるキャラ動作において意味を持つ情報です。
          進行具合は同期コードで示されますが、同期コードの値の持つ意味は動作の
          種類により異なります。
  関連    SYNC_... (m)


void  同期完了_攻撃( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在の攻撃動作の「終了」をシステムに通知します。システムはこれを
          受けると、p の次サイクルからの動作状態が 'ACT_アイドル' になるように
          処理します。この関数は、攻撃動作のＡＣＴ関数の最後のサイクルで必ず
          実行して下さい。
  関連    同期完了_複合攻撃 (f)
          同期完了_一般動作 (f) など


void  同期完了_複合攻撃( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在の複合動作の「終了」をシステムに通知します。システムはこれを
          受けると、p の次サイクルからの複合動作状態が 'SUB_待機' になるように
          処理します。この関数は、複合動作のＳＵＢ関数の最後のサイクルで必ず
          実行して下さい。
  関連    同期完了_攻撃 (f)
          同期完了_一般動作 (f) など


８−３．「ジャンプ」動作関連


void  同期進行_ジャンプ着地( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在のジャンプ動作において地面に「着地」したことをシステムに通知
          します。これを通知した後に再び地面から離れることは許されません。この
          関数は、ジャンプ動作のＳＵＢ関数の「着地」したタイミングで必ず実行し
          て下さい。
  関連    SUB_ＪＵＭＰ (m)
          同期完了_ジャンプ (f)


void  同期完了_ジャンプ( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在のジャンプ動作の「終了」をシステムに通知します。システムは
          これを受けると、p の次サイクルからの動作状態が 'ACT_アイドル' になる
          ように処理します。この関数は、ジャンプ動作のＳＵＢ関数の最後のサイク
          ルで必ず実行して下さい。
  関連    SUB_ＪＵＭＰ (m)
          同期進行_ジャンプ着地 (f)


８−４．「不時着」動作関連


short  同期開始_不時着( int p )

  戻り値  ON（先頭である）, OFF（先頭でない）
  引数    p  キャラクタ・ハンドラ
  説明    p の現在の不時着動作において先頭のサイクルであるかどうかを取得しま
          す。この関数は、不時着動作のＳＵＢ関数において初期化処理を行うような
          場合にそのタイミングを取得するために使用します。
  関連    SUB_不時着 (m)
          同期完了_不時着 (f)


void  同期完了_不時着( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在の不時着動作の「終了」をシステムに通知します。システムはこれ
          を受けると、p の次サイクルからの動作状態が 'ACT_アイドル' になるよう
          に処理します。この関数は、不時着動作のＳＵＢ関数の最後のサイクルで必
          ず実行して下さい。
  関連    SUB_不時着 (m)
          同期開始_不時着 (f)


８−５．「起き上がり」動作関連


void  同期完了_起き上がり( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在の起き上がり動作の「終了」をシステムに通知します。システムは
          これを受けると、p の次サイクルからの動作状態が 'ACT_アイドル' になる
          ように処理します。この関数は、起き上がり動作のＡＣＴ関数の最後のサイ
          クルで必ず実行して下さい。
  関連    ACT_起き上がり (m)


８−６．「地上投げ」動作関連


void  同期開始_地上投げ( int p, short ofs, short drct )

  引数    p  キャラクタ・ハンドラ
          ofs  相対Ｘ座標（-512〜511）
          drct  投げる方向（DRCT_右,DRCT_左,DRCT_自動）
  説明    p の地上投げ動作の「開始」をシステムに通知します。システムはこれを受
          けると、p が安全に地上投げ動作を続けられるように処理します。また、
          相手キャラの身体Ｘ座標を p の身体Ｘ座標からの相対座標 ofs に設定（
          引き込み）します。drct には投げる方向を指定します。drct=DRCT_自動 の
          時はレバー入力の方向に投げるように自動設定されます。この関数は、地上
          投げ動作のＡＣＴ関数の最初のサイクルで必ず実行して下さい。
  関連    同期開始_地上投げられ (f)
          ACT_地上投げ (m)


８−７．「地上投げられ」動作関連


void  同期開始_地上投げられ( int p, short drct )

  引数    p  キャラクタ・ハンドラ
          drct  投げられ方向（DRCT_右,DRCT_左,DRCT_自動）
  説明    p の地上投げられ動作の「開始」をシステムに通知します。システムはこれ
          を受けると、p が安全に地上投げられ動作を続けられるように処理します。
          drct には投げられ方向を指定します。drct=DRCT_自動 の時は、相手の
          レバー入力の方向に投げられるように自動設定されます。この関数は、
          地上投げられ動作のＡＣＴ関数の最初のサイクルで必ず実行して下さい。
  関連    同期開始_地上投げ (f)
          ACT_投げられ (m)


８−８．「連続技デモ」動作関連


short  同期取得_連続技( int p )

  戻り値  連続技過程値（0〜32767）
  引数    p  キャラクタ・ハンドラ
  説明    p の連続技デモ動作の過程値を取得します。過程値とは、１つの動作の進行
          具合を示すシステム変数です。開始終了よりもさらに細かいステップをシス
          テムが管理する必要があるキャラ動作において意味を持つ情報です。過程値
          は動作の最初に 0 が設定され、１ステップ進行すると +1 されます。
  関連    同期進行_連続技 (f)
          SUB_連続技 (m)


void  同期進行_連続技( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の連続技デモ動作の過程値を +1 します。
  関連    同期取得_連続技 (f)
          SUB_連続技 (m)


void  同期完了_連続技( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在の連続技デモ動作の「終了」をシステムに通知します。この関数
          は、連続技デモ動作のＳＵＢ関数の最後のサイクルで必ず実行して下さい。
  関連    同期進行_連続技 (f)
          同期取得_連続技 (f)
          SUB_連続技 (m)


８−９．「防御」動作関連


void  同期進行_防御( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の防御動作を進行します。防御動作のＡＣＴ関数で必ず毎サイクル実行し
          て下さい。
  関連    同期完了_防御 (f)
          ACT_地上防御 (m)


short  同期取得_防御( int p )

  戻り値  同期コード（SYNC_...）
  引数    p  キャラクタ・ハンドラ
  説明    p の防御動作の過程値を取得します。過程値とは、１つの動作の進行具合を
          示すシステム変数です。開始終了よりもさらに細かいステップをシステムが
          管理する必要があるキャラ動作において意味を持つ情報です。過程値は以下
          の同期コードで示されます。
              SYNC_防御_解除       : アイドル状態
              SYNC_防御_姿勢       : 後退動作後の防御姿勢状態
              SYNC_防御_反動硬直   : 防御後の後退動作状態
              SYNC_防御_ヒット硬直 : 防御直後のヒットストップ状態
  関連    同期進行_防御 (f)
          SUB_連続技 (m)
          SYNC_防御_... (m)


void  同期完了_防御( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在の防御動作の「終了」をシステムに通知します。システムはこれを
          受けると、p の次サイクルからの動作状態が 'ACT_アイドル' になるように
          処理します。この関数は、防御動作のＡＣＴ関数の最後のサイクルで必ず
          実行して下さい。
  関連    同期進行_防御 (f)
          ACT_地上防御 (m)


..............................................................................
９．キャラの攻撃動作に関する操作


９−１．ヒット情報の管理


void  ヒット登録_情報( int p, short hit_id, HIT_INFO *hit_info )

  引数    p  キャラクタ・ハンドラ
          hit_id  HIT-ID
          hit_info  ヒット情報へのポインタ
  説明    p の用意したヒット情報をシステムに登録します。登録したヒット情報は
          HIT-ID hit_id が対応付けされます。
  関連    ヒット登録_情報２ (f)
          ヒット取得_情報 (f)
          攻撃設定_ヒット情報 (f)
          攻撃設定_空中ヒット情報 (f)
          HIT_... (m)


void  ヒット登録_情報２( int p, HIT_INF_LIST *list )

  引数    p  キャラクタ・ハンドラ
          list  ヒット情報リストへのポインタ
  説明    p の用意したヒット情報をシステムに登録します。ヒット登録_情報() との
          違いは、HIT-ID とヒット情報の対応リストを指定することで複数の組み合
          わせを一回で登録処理できる所です。
  関連    ヒット登録_情報 (f)
          ヒット取得_情報 (f)
          攻撃設定_ヒット情報 (f)
          攻撃設定_空中ヒット情報 (f)
          HIT_... (m)


HIT_INFO  *ヒット取得_情報( int p, short hit_id )

  戻り値  ヒット情報へのポインタ
  引数    p  キャラクタ・ハンドラ
          hit_id  HIT-ID
  説明    p の登録した hit_id に対応するヒット情報へのポインタを取得します。
  関連    ヒット登録_情報 (f)
          ヒット登録_情報２ (f)
          HIT_... (m)


９−２．攻撃属性の設定


void  攻撃設定_威力レベル( int p, short level )

  引数    p  キャラクタ・ハンドラ
          level  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
  説明    p の現在の攻撃動作の攻撃力を設定します。攻撃力は、攻撃動作を実行する
          ときに既に指定されていますので、この関数は攻撃動作の途中で攻撃力を
          変更する目的以外では使用しません。
  関連    攻撃取得_威力レベル (f)


void  攻撃設定_最多ヒット数( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  最多ヒット数（0〜1023）
  説明    p の現在の攻撃動作の最多ヒット数を設定します。この関数を実行した直後
          は「再設定モード」が 0 になります。
  関連    攻撃設定_最多ヒット数２ (f)
          攻撃取得_最多ヒット数 (f)


void  攻撃設定_最多ヒット数２( int p, short num, short mode )

  引数    p  キャラクタ・ハンドラ
          num  最多ヒット数（0〜1023）
          mode  再設定モード（0,1）
  説明    p の現在の攻撃動作の最多ヒット数を設定します。ただし、現在の「再設定
          モード」と mode が同値の場合のみ実行されます。この関数の実行後、再設
          定モードには 1 の排他的論理和（0→1,1→0）がとられます。
  関連    攻撃設定_最多ヒット数 (f)
          攻撃取得_最多ヒット数 (f)


void  攻撃設定_ヒット情報( int p, short hit_id )

  引数    p  キャラクタ・ハンドラ
          hit_id  ヒット情報（HIT_...）
  説明    p の現在の攻撃動作のヒット情報を設定します。ヒット情報は、HIT_ID
          hit_id で指定します。
  関連    ヒット登録_情報 (f)
          ヒット登録_情報２ (f)
          攻撃設定_空中ヒット情報 (f)
          攻撃取得_ヒット情報 (f)
          攻撃取得_被ヒット情報 (f)
          HIT_... (m)


void  攻撃設定_空中ヒット情報( int p, short hit_id )

  引数    p  キャラクタ・ハンドラ
          hit_id  ヒット情報（HIT_...）
  説明    p の現在の攻撃動作の空中ヒット情報を設定します。ヒット情報は、HIT_ID
          hit_id で指定します。空中ヒット情報は空中の相手に攻撃がヒットした時
          のヒット情報で、空中ヒット情報を設定しなければ 攻撃設定_ヒット情報()
          で設定したヒット情報が、空中ヒット情報の代わりを果たします。
  関連    ヒット登録_情報 (f)
          ヒット登録_情報２ (f)
          攻撃設定_ヒット情報 (f)
          攻撃取得_ヒット情報 (f)
          攻撃取得_被ヒット情報 (f)
          HIT_... (m)


void  攻撃設定_基本技キャンセル( int p, short ccla )

  引数    p  キャラクタ・ハンドラ
          ccla  基本技パターン（CCLA_...）
  説明    p の現在の攻撃動作の基本技キャンセル・パターンを設定します。現在実行
          中の基本技を ccla に含まれる基本技でキャンセルできるようになります。
          ccla には以下のマクロのビット和（|）を指定します。
              CCLA_立小
              CCLA_立中
              CCLA_立大
              CCLA_座小
              CCLA_座中
              CCLA_座大
              CCLA_空小
              CCLA_空中
              CCLA_空大
  関連    攻撃設定_必殺技キャンセル (f)
          CCLA_... (m)


void  攻撃設定_必殺技キャンセル( int p, short mode )

  引数    p  キャラクタ・ハンドラ
          mode  モード（ON,OFF）
  説明    p の現在実行中の攻撃動作（基本技）に対するキャンセル許可モードを設定
          します。mode=ON のとき必殺技でキャンセルできるようになります。
  関連    攻撃設定_基本技キャンセル (f)


void  攻撃設定_SHOT消滅( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  SHOTモジュール消滅数（0〜32767）
  説明    p の現在実行中の攻撃動作に対して SHOTモジュール消滅能力を設定しま
          す。攻撃矩形が相手の SHOTモジュールに衝突した時、num 個まで消滅させ
          るようになります。
  関連    攻撃設定_SHOT反射 (f)
          SHOT_CMD_減少 (m)


void  攻撃設定_SHOT反射( int p, short num, short h, short v )

  引数    p  キャラクタ・ハンドラ
          num  SHOTモジュール反射数（0〜32767）
          h  水平方向反射フラグ（ON,OFF）
          v  垂直方向反射フラグ（ON,OFF）
  説明    p の現在実行中の攻撃動作に対して SHOTモジュール反射能力を設定しま
          す。攻撃矩形が相手の SHOTモジュールに衝突した時、num 個まで反射させ
          るようになります。h,v で水平垂直方向の反射を指示します。
  関連    攻撃設定_SHOT消滅 (f)
          SHOT_CMD_反射 (m)


９−３．攻撃属性の取得


short  攻撃取得_威力レベル( int p )

  戻り値  攻撃力（LEVEL_大,LEVEL_中,LEVEL_小）
  引数    p  キャラクタ・ハンドラ
  説明    p の現在の攻撃動作の攻撃力を取得します。
  関連    攻撃設定_威力レベル (f)


short  攻撃取得_最多ヒット数( int p )

  戻り値  最多ヒット数（0〜1023）
  引数    p  キャラクタ・ハンドラ
  説明    p の現在の攻撃動作の最多ヒット数を取得します。
  関連    攻撃設定_最多ヒット数 (f)
          攻撃設定_最多ヒット数２ (f)


HIT_INFO  *攻撃取得_ヒット情報( int p )

  戻り値  ヒット情報へのポインタ
  引数    p  キャラクタ・ハンドラ
  説明    p の現在の攻撃動作のヒット情報を取得します。
  関連    ヒット登録_情報 (f)
          ヒット登録_情報２ (f)
          攻撃設定_ヒット情報 (f)
          攻撃設定_空中ヒット情報 (f)


HIT_INFO  *攻撃取得_被ヒット情報( int p )

  戻り値  ヒット情報へのポインタ
  引数    p  キャラクタ・ハンドラ
  説明    p が最後にくらった攻撃のヒット情報を取得します。
  関連    ヒット登録_情報 (f)
          ヒット登録_情報２ (f)
          攻撃設定_ヒット情報 (f)
          攻撃設定_空中ヒット情報 (f)


short  攻撃取得_超技モード( int p )

  戻り値  ON（実行している）, OFF（実行していない）
  引数    p  キャラクタ・ハンドラ
  説明    p の超技の実行状態を取得します。ただし、p が 同期開始_気集中() を
          実行していないと超技実行状態が ON になることはありません。
  関連    同期開始_気集中 (f)


９−４．超技扱いの手続き


void  同期開始_気集中( int p, short x, short y, short drct )

  引数    p  キャラクタ・ハンドラ
          x  相対Ｘ座標（-32768〜32767）
          y  相対Ｙ座標（-32768〜32767）
          drct  方向（DRCT_前,DRCT_後）
  説明    p の超技の「開始」をシステムに通知します。システムはこれを受けると、
          気集中グラフィックの表示を身体の相対座標(x,y) で開始し、p の超技実行
          状態を ON にします。drct には気集中グラフィックの表示方向を指定しま
          す。
  関連    同期取得_気集中 (f)
          攻撃取得_超技モード (f)
          Cmd設定_超技 (f)
          Cmd取得_超技 (f)


short  同期取得_気集中( int p )

  戻り値  気集中状態（0〜32767）
  引数    p  キャラクタ・ハンドラ
  説明    p の気集中状態を取得します。気集中状態とは気集中グラフィックの表示が
          完了するまでに要するサイクル数のことです。一般的なキャラは、この関数
          の戻り値が 1 以上の時に カウンタ設定_値維持() を実行し、キャラの動き
          を停止させます。
  関連    同期開始_気集中 (f)
          カウンタ設定_値維持 (f)


９−５．攻撃の多重化

    １つの攻撃動作には１つのシステム予約 ACT-ID が割り当てられています。しかし
  凝った攻撃をするキャラでは標準の ACT-ID では不足する場合があります。これの
  解決方法としてユーザ定義用の ACT-ID を利用し攻撃動作を新規に割り当てる方法が
  ありますが、標準のＣＰＵ制御時の思考処理で対応できないといった欠点がありま
  す。しかし、最も簡単な解決方法として「攻撃の多重化」が用意されています。
    「攻撃の多重化」では、ACT-ID を増やさず ACT-ID のＡＣＴ関数内で条件分岐し
  別の攻撃動作をさせます。分岐条件として評価される値は攻撃完了まで変化しない
  ことがシステムにより保証されています。


void  多重化設定_指定値( int p, short val )

  引数    p  キャラクタ・ハンドラ
          val  評価値（0〜32767）
  説明    p の攻撃多重化用の評価値を val に設定します。この関数は、多重化した
          ACT-ID を Cmd条件_地上必殺技 (f) などで指定した直後に実行します。
  関連    多重化取得_指定値 (f)
          Cmd条件_地上必殺技 (f) など


short  多重化取得_指定値( int p )

  戻り値  評価値（0〜32767）
  引数    p  キャラクタ・ハンドラ
  説明    p の攻撃多重化用の評価値を取得します。人間が p を制御しているときは
          多重化設定_指定値() で設定した値が返ります。ＣＰＵが p を制御してい
          るときはシステムが設定したランダムな値が返ります。
  関連    多重化設定_指定値 (f)


short  多重化取得_攻撃間隔( int p, short i )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          i  相手との間隔（-512〜511）
  説明    p からの距離 i 以内に相手が存在するかどうかを取得します。この関数の
          戻り値は p の現在の攻撃動作が完了するまで変化しないので、攻撃の多重
          化用の評価値として使用できます。


..............................................................................
１０．キャラのくらい動作に関する操作


１０−１．コンボ数の操作

    ＳＦＸＶＩには、攻撃側キャラのコンボ数（攻撃が連続でヒットした時のヒット
  数）を画面に表示してくれる機能がありますが、コンボ数の計算はシステムが行うの
  ではなく、くらい側のキャラが行います。この理由は、連続技というものは攻撃側の
  都合で決まるものではなく、くらい側が回避できるかどうかで決まるものであるから
  です。


void  コンボ設定_クリア( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在のコンボ数を 0 クリアします。通常、コンボ数の 0 クリアは
          システムが適切なタイミングで行いますが、それ以外のタイミングで行う
          場合にこの関数を使用します。
  関連    コンボ設定_増加 (f)
          コンボ設定_決定 (f)


void  コンボ設定_増加( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在のコンボ数を +1 します。コンボの対象にするくらい動作の
          ＡＣＴ関数のできるだけ初期のサイクルに実行して下さい。
  関連    コンボ設定_クリア (f)
          コンボ設定_決定 (f)


void  コンボ設定_決定( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の現在のコンボ数を決定します。くらい動作のＡＣＴ関数において、
          これ以降はコンボの対象にならないことが確定したサイクルでこの関数を
          実行して下さい。
  関連    コンボ設定_クリア (f)
          コンボ設定_増加 (f)


１０−２．各種判定


void  同期開始_先制攻撃判定( int p )

  引数    p  キャラクタ・ハンドラ
  説明    p の先制攻撃判定の有効期間の「開始」をシステムに通知します。システム
          はこれを受けると先制攻撃の判定を行います。この関数は、くらい動作の
          ＡＣＴ関数のできるだけ初期のサイクルで実行します。


..............................................................................
１１．セルに関する操作


１１−１．セル情報の管理


void  セル登録_情報( int p, short cell_id, CELL *cell_info )

  引数    p  キャラクタ・ハンドラ
          cell_id  CELL-ID（0〜1023）
          cell_info  セル情報へのポインタ
  説明    p の用意したセル情報をシステムに登録します。登録したセル情報は
          CELL-ID cell_id が対応付けされます。
  関連    セル登録_情報２ (f)
          セル取得_情報 (f)
          セル設定_表示 (f)
          CELL_... (m)


void  セル登録_情報２( int p, CELL_INF_LIST *list )

  引数    p  キャラクタ・ハンドラ
          list  セル情報リストへのポインタ
  説明    p の用意したセル情報をシステムに登録します。セル登録_情報() との違い
          は、CELL-ID とセル情報の対応リストを指定することで複数の組み合わせを
          一回で登録処理できる所です。
  関連    セル登録_情報 (f)
          セル取得_情報 (f)
          セル設定_表示 (f)
          CELL_INF_LIST... (t)


CELL  *セル取得_情報( int p, short cell_id )

  戻り値  セル取得へのポインタ
  引数    p  キャラクタ・ハンドラ
          cell_id  CELL-ID（0〜1023）
  説明    p の登録した cell_id に対応するセル情報へのポインタを取得します。
  関連    セル登録_情報 (f)
          セル登録_情報２ (f)
          CELL_... (m)


１１−２．セルの表示


void  セル設定_表示( int p, short cell_id )

  引数    p  キャラクタ・ハンドラ
          cell_id  CELL-ID（0〜1023）
  説明    p の登録したセル cell_id を画面上に表示します。
  関連    セル登録_情報 (f)
          セル登録_情報２ (f)
          セル取得_表示 (f)
          CELL_... (m)


short  セル取得_表示( int p )

  戻り値  CELL-ID（0〜1023）
  引数    p  キャラクタ・ハンドラ
  説明    現在画面に表示されている p のセルの CELL-ID を取得します。
  関連    セル設定_表示 (f)
          CELL_... (m)


..............................................................................
１２．プレイヤーの入力コマンドの判定に関する操作


１２−１．必殺技コマンド判定関数の登録


void  Cmd登録_地上必殺技判定関数( int p, void (*func)() )

  引数    p  キャラクタ・ハンドラ
          func  地上必殺技コマンドを判定する関数
  説明    p の地上必殺技コマンドを判定するため関数をシステムに登録します。p が
          地上必殺技をもたない場合は登録する必要はありません。
  関連    Cmd登録_空中必殺技判定関数 (f)
          Cmd登録_基本技判定関数 (f)


void  Cmd登録_空中必殺技判定関数( int p, void (*func)() )

  引数    p  キャラクタ・ハンドラ
          func  空中必殺技コマンドを判定する関数
  説明    p の空中必殺技コマンドを判定するため関数をシステムに登録します。p が
          空中必殺技をもたない場合は登録する必要はありません。
  関連    Cmd登録_地上必殺技判定関数 (f)
          Cmd登録_基本技判定関数 (f)


void  Cmd登録_基本技判定関数( int p, void (*func)() )

  引数    p  キャラクタ・ハンドラ
          func  基本技コマンドを判定する関数
  説明    p の基本技コマンドを判定するため関数をシステムに登録します。標準の基
          本技コマンドの判定処理は 'VCT_基本技コマンド判定処理' のＶＣＴ関数で
          行いますが、これとは別の基本技コマンドを定義する場合に、この関数を使
          用します。
  関連    Cmd登録_地上必殺技判定関数 (f)
          Cmd登録_空中必殺技判定関数 (f)
          VCT_基本技コマンド判定処理 (m)


１２−２．ジョイスティックのレバー入力状態の取得


short  Stc取得_直接状態( int p, short stick )

  戻り値  ON（同じ）, OFF（違う）
  引数    p  キャラクタ・ハンドラ
          stick  レバー入力方向（STICK_...）
  説明    p の現サイクルのジョイスティックのレバー入力方向を取得します。レバー
          の入力方向が stick と同じかどうかを知ることができます。
  関連    Stc設定_直接状態 (f)
          STICK_... (m)


１２−３．ジョイスティックのレバー入力状態の設定


void  Stc設定_直接状態( int p, short stick )

  引数    p  キャラクタ・ハンドラ
          stick  レバー入力方向（STICK_...）
  説明    p の現サイクルのジョイスティックのレバー入力方向を stick に設定しま
          す。レバー入力方向とはシステムがハードウェアを調査した結果が設定され
          ている変数であり、システムが設定したレバー入力方向を無効にする必要が
          あるときにこの関数を使用します。
  関連    Stc取得_直接状態 (f)
          STICK_... (m)


１２−４．ＳＴＣログを用いたレバー入力状態の取得


void  Stc取得_初期化( int p, short max )

  引数    p  キャラクタ・ハンドラ
          max  調査対象にする入力サイクル数（0〜256）
  説明    p の STCポインタを最新位置に設定します。また、max で調査対象にする
          入力サイクル数を指定します。この関数は、STCログを調査する処理の直前
          で必ず実行します。
  関連    Stc取得_現在 (f)
          Stc取得_存在 (f)
          Stc取得_存在Ｎ (f)
          Stc取得_連続 (f)


short  Stc取得_現在( int p, short stick )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          stick  レバー入力方向（STICK_...）
  説明    p の STCログを調査します。STCポインタの位置に、stick 方向の入力が
          存在するかどうかを知ることができます。STCポインタは変化しません。
  関連    Stc取得_初期化 (f)
          Stc取得_存在 (f)
          Stc取得_存在Ｎ (f)
          Stc取得_連続 (f)


short  Stc取得_存在( int p, short stick )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          stick  レバー入力方向（STICK_...）
  説明    p の STCログを調査します。STCポインタの位置より過去に、stick 方向の
          入力が存在するかどうかを知ることができます。STCポインタは stick 方向
          の入力が最初に見つかった位置まで移動します。
  関連    Stc取得_初期化 (f)
          Stc取得_現在 (f)
          Stc取得_存在Ｎ (f)
          Stc取得_連続 (f)


short  Stc取得_存在Ｎ( int p, short stick )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          stick  レバー入力方向（STICK_...）
  説明    p の STCログを調査します。STCポインタの位置より過去に、stick 方向の
          入力が存在するかどうかを知ることができます。ただし、stick 方向の入力
          が見つかる以前に STICK_Ｎ 以外の入力が存在した場合、stick 方向の入力
          は存在しないとみなされます。STCポインタは stick 方向の入力が最初に見
          つかった位置まで移動します。
  関連    Stc取得_初期化 (f)
          Stc取得_現在 (f)
          Stc取得_存在 (f)
          Stc取得_連続 (f)


short  Stc取得_連続( int p, short stick, short num )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          stick  レバー入力方向（STICK_...）
          num  連続サイクル数（0〜256）
  説明    p の STCログを調査します。STCポインタの位置より過去に、stick 方向の
          入力が num サイクル連続して存在するかどうかを知ることができます。STC
          ポインタは、最初に見つかった stick 方向の入力の num サイクル連続した
          部分の次の位置まで移動します。
  関連    Stc取得_初期化 (f)
          Stc取得_現在 (f)
          Stc取得_存在 (f)
          Stc取得_存在Ｎ (f)


１２−５．ジョイスティックのボタン入力状態の取得


short  Trg取得_直接状態( int p )

  戻り値   1（Aが押された）,  2（Bが押された）,  3（A,Bが同時に押された）,
 　　　　 -1（Aが離された）, -2（Bが離された）, -3（A,Bが同時に離された）,
 　　　　  0（なにもされていない）
  引数    p  キャラクタ・ハンドラ
  説明    p の現サイクルのジョイスティックのボタン入力状態を取得します。ただ
          し、１サイクル前の入力状態に対して変化がなかった場合は 0 が返りま
          す。
  関連    Trg取得_直接状態２ (f)


short  Trg取得_直接状態２( int p )

  戻り値   1（Aが押された）,  2（Bが押された）,  3（A,Bが同時に押された）,
 　　　　  0（なにもされていない）
  引数    p  キャラクタ・ハンドラ
  説明    p の現サイクルのジョイスティックのボタン入力状態を取得します。
          TRG取得_直接状態() との違いは、１サイクル前の入力状態に関係しない点
          です。
  関連    Trg取得_直接状態 (f)


１２−６．ＴＲＧログを用いたボタン入力の取得


void  Trg取得_初期化( int p, short max )

  引数    p  キャラクタ・ハンドラ
          max  調査対象にする入力サイクル数（0〜256）
  説明    p の TRGポインタを最新位置で初期化します。また、max で調査対象にする
          入力サイクル数を指定できます。この関数は、TRGログを調査する処理の
          直前で必ず実行します。
  関連    Trg取得_存在 (f)
          Trg取得_連続 (f)
          Trg取得_断続 (f)


short  Trg取得_存在( int p, short trig )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          trig  ボタンの入力コード（TRIG_...）
  説明    p の TRGログを調査します。TRGポインタの位置より過去に、trig ボタン
          の入力が存在するかどうかを知ることができます。TRGポインタは trig ボ
          タンの入力が最初に見つかった位置まで移動します。
  関連    Trg取得_初期化 (f)
          Trg取得_連続 (f)
          Trg取得_断続 (f)


short  Trg取得_連続( int p, short trig, short num )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          trig  ボタンの入力コード（TRIG_...）
          num  連続サイクル数（0〜256）
  説明    p の TRGログを調査します。TRGポインタの位置より過去に、trig ボタン
          の入力が num サイクル連続して存在するかどうかを知ることができます。
          TRGポインタは trig ボタンの入力の num サイクル連続した部分の次の位置
          まで移動します。
  関連    Trg取得_初期化 (f)
          Trg取得_存在 (f)
          Trg取得_断続 (f)


short  Trg取得_断続( int p, short trig, short num )

  戻り値  ON（存在する）, OFF（存在しない）
  引数    p  キャラクタ・ハンドラ
          trig  ボタンの入力コード（TRIG_...）
          num  断続回数（0〜128）
  説明    p の TRGログを調査します。TRGポインタの位置より過去に、trig ボタン
          の入力が num 回断続して存在するかどうかを知ることができます。TRG
          ポインタは、最初に見つかった trig ボタンの入力の num 回断続した部分
          の次の位置まで移動します。
  関連    Trg取得_初期化 (f)
          Trg取得_存在 (f)
          Trg取得_連続 (f)


１２−７．入力コマンドに対するキャラの有効状態の取得


short  Cmd条件_地上基本技( int p, short ccla, short gCancel )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
          ccla  基本技キャンセル・パターン（OFF,CCLA_...の論理和）
          gCancel  防御キャンセル・モード（ON,OFF）
  説明    p の地上基本技の実行可否状態を取得します。通常、この関数は
          Cmd実行_地上基本技() の直前で実行します。基本的に p の現在の動作状態
          が 'ACT_アイドル' でなければ「不可能」を返しますが、以下の指定により
          「可能」を返す条件を増やすことができます。
            ・ccla != OFF：
               p の現在の基本技キャンセル・パターンと ccla の論理積が真。
            ・gCancel=ON：
               p の現在の動作状態が「防御」動作の場合。
  関連    Cmd実行_地上基本技 (f)
          CCLA_... (m)


short  Cmd条件_空中基本技( int p, short ccla, short gCancel )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
          ccla  基本技キャンセル・パターン（OFF,CCLA_...の論理和）
          gCancel  防御キャンセル・モード（ON,OFF）
  説明    p の空中基本技の実行可否状態を取得します。通常、この関数は
          Cmd実行_空中基本技() の直前で実行します。基本的に p の現在の動作状態
          が 'ACT_ジャンプ' でなければ「不可能」を返しますが、以下の指定により
          「可能」を返す条件を増やすことができます。
            ・ccla != OFF：
               p の現在の基本技キャンセル・パターンと ccla の論理積が真。
            ・gCancel=ON：
               p の現在の動作状態が「防御」動作の場合。
  関連    Cmd実行_空中必殺技 (f)
          CCLA_... (m)


short  Cmd条件_地上必殺技( int p, short bCancel, short gCancel )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
          bCancel  基本技キャンセル・モード（ON,OFF）
          gCancel  防御キャンセル・モード（ON,OFF）
  説明    p の地上必殺技の実行可否状態を取得します。通常、この関数は
          Cmd実行_地上必殺技() の直前で実行します。基本的に p の現在の動作状態
          が 'ACT_アイドル' でなければ「不可能」を返しますが、以下の指定により
          「可能」を返す条件を増やすことができます。
            ・bCancel=ON：
               p の現在の基本技キャンセル・モードが ON の場合。
            ・gCancel=ON：
               p の現在の動作状態が「防御」動作の場合。
  関連    Cmd実行_地上必殺技 (f)


short  Cmd条件_上昇必殺技( int p, short bCancel, short gCancel )

  戻り値  ON（可能）, OFF（不可能）
          bCancel  基本技キャンセル・モード（ON,OFF）
          gCancel  防御キャンセル・モード（ON,OFF）
  説明    p の上昇必殺技（最後の入力が上成分で出る地上必殺技）の実行可否状態を
          取得します。通常、この関数は Cmd実行_地上必殺技() の直前で実行しま
          す。基本的に p の現在の動作状態が 'ACT_ジャンプ' でなければ
          「不可能」を返しますが、以下の指定により「可能」を返す条件を増やすこ
          とができます。
            ・bCancel=ON：
               p の現在の基本技キャンセル・モードが ON の場合。
            ・gCancel=ON：
               p の現在の動作状態が「防御」動作の場合。
  関連    Cmd実行_地上必殺技 (f)


short  Cmd条件_空中必殺技( int p, short bCancel, short gCancel )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
          bCancel  基本技キャンセル・モード（ON,OFF）
          gCancel  防御キャンセル・モード（ON,OFF）
  説明    p の空中必殺技の実行可否状態を取得します。通常、この関数は
          Cmd実行_空中必殺技() の直前で実行します。基本的に p の現在の動作状態
          が 'ACT_ジャンプ' でなければ「不可能」を返しますが、以下の指定により
          「可能」を返す条件を増やすことができます。
            ・bCancel=ON：
               p の現在の基本技キャンセル・モードが ON の場合。
            ・gCancel=ON：
               p の現在の動作状態が「防御」動作の場合。
  関連    Cmd実行_空中必殺技 (f)


short  Cmd条件_地上投げ( int p, short bCancel, short gCancel, short ix )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
          bCancel  基本技キャンセル・モード（ON,OFF）
          gCancel  防御キャンセル・モード（ON,OFF）
          ix  水平方向の間合い（-32767〜32768）
  説明    p の地上投げ技の実行可否状態を取得します。通常、この関数は
          Cmd実行_地上投げ() の直前で実行します。基本的に p の現在の動作状態
          が 'ACT_アイドル' でかつ相手の水平方向の間隔が ix 以内でなければ
          「不可能」を返しますが、以下の指定により「可能」を返す条件を増やすこ
          とができます。
            ・bCancel=ON：
               p の現在の基本技キャンセル・モードが ON の場合。
            ・gCancel=ON：
               p の現在の動作状態が「防御」動作の場合。
  関連    Cmd実行_地上投げ (f)


short  Cmd条件_空中投げ( int p, short bCancel, short gCancel,
                                                 short ix, short iy )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
          bCancel  基本技キャンセル・モード（ON,OFF）
          gCancel  防御キャンセル・モード（ON,OFF）
          ix  水平方向の間合い（-32767〜32768）
          iy  垂直方向の間合い（-32767〜32768）
  説明    p の空中投げ技の実行可否状態を取得します。通常、この関数は
          Cmd実行_空中投げ() の直前で実行します。基本的に p の現在の動作状態
          が 'ACT_ジャンプ' でかつ相手の水平方向の間隔が ix 以内で垂直方向の
          間隔が iy 以内でなければ「不可能」を返しますが、以下の指定により
          「可能」を返す条件を増やすことができます。
            ・bCancel=ON：
               p の現在の基本技キャンセル・モードが ON の場合。
            ・gCancel=ON：
               p の現在の動作状態が「防御」動作の場合。
  関連    Cmd実行_空中投げ (f)


short  Cmd条件_防御キャンセル( int p )

  戻り値  ON（可能）, OFF（不可能）
  引数    p  キャラクタ・ハンドラ
  説明    p の「防御キャンセル」動作の実行可否状態を取得します。通常、この関数
          は Cmd実行_地上必殺技() の直前で実行します。
  関連    Cmd実行_地上必殺技 (f)
          Cmd設定_防御キャンセル技 (f)


..............................................................................
１３．キャラ動作の実行コマンドに関する操作


１３−１．基本技コマンドの実行


void  Cmd実行_地上基本技( int p, short act_id, short level )

  引数    p  キャラクタ・ハンドラ
          act_id  地上基本技（ACT_...）
          level  攻撃力（LEVEL_小,LEVEL_中,LEVEL_大）
  説明    p の次のサイクルからの動作状態を地上基本技 act_id に設定します。
          攻撃力には level がセットされます。この関数を、Cmd条件_地上基本技()
          の戻り値が OFF の状態で実行するとキャラの動きが不自然になってしまい
          ます。
  関連    Cmd条件_地上基本技 (f)
          攻撃取得_威力レベル (f)
          ACT_... (m）


void  Cmd実行_空中基本技( int p, short sub_id, short level )

  引数    p  キャラクタ・ハンドラ
          sub_id  空中基本技（SUB_...）
          level  攻撃力（LEVEL_小,LEVEL_中,LEVEL_大）
  説明    p の次のサイクルからの動作状態を空中基本技 sub_id に設定します。
          攻撃力には level がセットされます。この関数を、Cmd条件_空中基本技()
          の戻り値が OFF の状態で実行するとキャラの動きが不自然になってしまい
          ます。
  関連    Cmd条件_空中基本技 (f)
          攻撃取得_威力レベル (f)
          SUB_... (m）


１３−２．必殺技コマンドの実行


void  Cmd実行_地上必殺技( int p, short act_id, short level )

  引数    p  キャラクタ・ハンドラ
          act_id  地上必殺技（ACT_...）
          level  攻撃力（LEVEL_小,LEVEL_中,LEVEL_大,LEVEL_自動）
  説明    p の次のサイクルからの動作状態を地上必殺技 act_id に設定します。
          攻撃力には level がセットされます。ただし、level=LEVEL_自動 の場合、
          ジョイスティックのボタン入力状態によって、LEVEL_小,LEVEL_中,LEVEL_大
          のいずれかが自動的に設定されます。この関数を、Cmd条件_地上必殺技()
          の戻り値が OFF の状態で実行するとキャラの動きが不自然になってしまい
          ます。
  関連    Cmd条件_地上必殺技 (f)
          Cmd条件_上昇必殺技 (f)
          攻撃取得_威力レベル (f)
          ACT_... (m）


void  Cmd実行_空中必殺技( int p, short sub_id, short level )

  引数    p  キャラクタ・ハンドラ
          sub_id  空中必殺技（SUB_...）
          level  攻撃力（LEVEL_小,LEVEL_中,LEVEL_大,LEVEL_自動）
  説明    p の次のサイクルからの動作状態を空中必殺技 act_id に設定します。
          攻撃力には level がセットされます。ただし、level=LEVEL_自動 の場合、
          ジョイスティックのボタン入力状態によって、LEVEL_小,LEVEL_中,LEVEL_大
          のいずれかが自動的に設定されます。この関数を、Cmd条件_空中必殺技()
          の戻り値が OFF の状態で実行するとキャラの動きが不自然になってしまい
          ます。
  関連    Cmd条件_空中必殺技 (f)
          攻撃取得_威力レベル (f)
          SUB_... (m）


１３−３．投げ技コマンドの実行


void  Cmd実行_地上投げ( int p, short act_id, short act_id2, short drct )

  引数    p  キャラクタ・ハンドラ
          act_id  地上投げ側の動作（ACT_...）
          act_id2  地上投げられ側の動作（ACT_...）
          drct  投げる方向（DRCT_前,DRCT_後）
  説明    p の次のサイクルからの動作状態を地上投げ act_id、相手の動作状態を
          地上投げられ act_id2 に設定します。投げる方向は drct で指定します。
          この関数を、Cmd条件_地上投げ() が OFF の状態で実行するとキャラの動き
          が不自然になってしまいます。
  関連    Cmd条件_地上投げ (f)
          ACT_地上投げ (m)
          ACT_投げられ (m)
          DRCT_... (m)


void  Cmd実行_空中投げ( int p, short act_id, short act_id2, short drct )

  引数    p  キャラクタ・ハンドラ
          act_id  空中投げ側の動作（ACT_...）
          act_id2  空中投げられ側の動作（ACT_...）
          drct  投げる方向（DRCT_前,DRCT_後）
  説明    p の次のサイクルからの動作状態を空中投げ act_id、相手の動作状態を
          空中投げられ act_id2 に設定します。投げる方向は drct で指定します。
          この関数を、Cmd条件_空中投げ() が OFF の状態で実行するとキャラの動き
          が不自然になってしまいます。
  関連    Cmd条件_空中投げ (f)
          ACT_空中投げ (m)
          ACT_空中投げられ (m)
          DRCT_... (m)


１３−４．特定動作コマンドの実行


void  Cmd実行_歩行( int p, short drct )

  引数    p  キャラクタ・ハンドラ
          drct  歩行方向（DRCT_前,DRCT_中,DRCT_後）
  説明    次のサイクルからの p の歩行方向を設定します。drct には歩行する方向を
          指定します。ただし、p の動作状態が 'ACT_アイドル' でなければ歩行でき
          ません。この関数は、主に 'VCT_歩行コマンド判定処理' のＶＣＴ関数で
          使用します。
  関連    VCT_歩行コマンド判定処理 (m)
          DRCT_... (m)


void  Cmd実行_しゃがみ( int p )

  引数    p  キャラクタ・ハンドラ
  説明    次のサイクルからの p のしゃがみ状態を設定します。ただし、p の動作
          状態が 'ACT_アイドル' でなければしゃがむことはできません。この関数
          は、主に 'VCT_歩行コマンド判定処理' のＶＣＴ関数で使用します。
  関連    VCT_歩行コマンド判定処理 (m)


void  Cmd実行_ジャンプ( int p, short drct )

  引数    p  キャラクタ・ハンドラ
          drct  ジャンプする方向（DRCT_前,DRCT_中,DRCT_後）
  説明    p の次のサイクルからの動作状態をジャンプ動作 'ACT_ジャンプ' に設定し
          ます。drct にはジャンプする方向を指定します。この関数は、主に
          'VCT_ジャンプコマンド判定処理' のＶＣＴ関数で使用します。
  関連    VCT_ジャンプコマンド判定処理 (m)
          DRCT_... (m)


void  Cmd実行_防御( int p, short mode )

  引数    p  キャラクタ・ハンドラ
          mode  防御状態（ON,OFF）
  説明    次のサイクルからの p の防御状態を設定します。mode=ON で防御を行い、
          mode=OFF で防御を解除します。ただし、p の動作状態が 'ACT_アイドル'
          でなければ防御することはできません。この関数は、主に
          'VCT_防御コマンド判定処理' のＶＣＴ関数で使用します。
  関連    VCT_防御コマンド判定処理 (m)


void  Cmd実行_受け身( int p, short mode )

  引数    p  キャラクタ・ハンドラ
          mode  受け身状態（ON,OFF）
  説明    次のサイクルからの p の受け身状態を設定します。mode=ON で受け身を行
          い、mode=OFF で受け身を解除します。ただし、p が投げられなければ
          「受け身」動作には移りません。なお、mode=OFF を指定するのは、主に
          「投げられ」動作のＡＣＴ関数で受け身側キャラの受け身状態をクリアする
          場合です。
  関連    VCT_受け身コマンド判定処理 (m)
          ACT_投げられ (m)


void  Cmd実行_気絶( int p, short num1, short num2 )

  引数    p  キャラクタ・ハンドラ
          num1  短時間気絶サイクル数（0〜32767）
          num2  長時間気絶サイクル数（0〜32767）
  説明    p の次のサイクルからの動作状態を気絶動作 'ACT_ピヨピヨ' に設定しま
          す。気絶し続けるサイクル数には、気絶度の蓄積具合に応じて num1 または
          num2 が設定されます。この関数は、'SUB_気絶転倒' のＳＵＢ関数の最後の
          サイクルで実行します。
  関連    ACT_ピヨピヨ (m)
          SUB_気絶転倒 (m)


１３−５．一般動作コマンドの実行


void  Cmd実行_動作( int p, short act_id )

  引数    p  キャラクタ・ハンドラ
          act_id  ACT-ID
  説明    次のサイクルからの p の動作状態を設定します。act_id には ACT-ID を
          自由に指定できるため、システムの整合性を崩す危険性を含んでいます。
          このため、この関数は動作状態を設定するための最終手段としてのみ使用し
          ます。


short  Cmd実行_CPU動作( int p, short id, short cpu_id )

  戻り値  ON（成功）, OFF（失敗）
  引数    p  キャラクタ・ハンドラ
          id  ACT-ID,SUB-ID
          cpu_id  CPU-ID
  説明    p がＣＰＵ制御の時、次のサイクルからの p の動作状態を id に設定する
          ためのサブ思考処理を cpu_id に対応するＣＰＵ関数で実行します。
  関連    Cmd実行_CPU動作２ (f)
          ACT_... (m)
          SUB_... (m)
          CPU_... (m)


short  Cmd実行_CPU動作２( int p, short type )

  戻り値  ON（成功）, OFF（失敗）
  引数    p  キャラクタ・ハンドラ
          type  動作内容（'A','S','M','J','D'）
  説明    p がＣＰＵ制御の時、次のサイクルからの p の動作状態を type に設定し
          ます。type にはＣＰＵ情報から得られる動作内容のコードをそのまま指定
          することができます。
      　　　  type = 'A'：ACT_必殺技Ａ, 'S'：ACT_必殺技Ｓ, 'M'：ACT_必殺技Ｍ,
　　　               'J'：ACT_ジャンプ, 'D'：ACT_地上防御 or ACT_空中防御
  関連    Cmd実行_CPU動作 (f)
          Cpu取得_CPU情報 (f)
          ACT_... (m)


１３−６．「超技」扱いの手続き


void  Cmd設定_超技( int p, short mode )

  引数    p  キャラクタ・ハンドラ
          mode  超技指定（ON,OFF）
  説明    この関数は、p のコマンド判定関数内で超技コマンドが成立した直後に実行
          します。mode=ON のとき、成立したコマンドを「超技」扱いに設定します。
          この設定を参照するには Cmd取得_超技() を使用します。注意すべきは、
          超技動作のＡＣＴ関数で 同期開始_気集中() を実行しないとキャラの攻撃
          属性として「超技」扱いにはならないという点です。
  関連    Cmd取得_超技 (f)
          同期開始_気集中 (f)
          攻撃取得_超技モード (f)


short  Cmd取得_超技( int p )

  戻り値  ON（超技）, OFF（超技でない）
  説明    p の成立コマンドが「超技」扱いかどうかを取得します。この関数は、
          超技動作のＡＣＴ関数において、「超技」扱いのときに処理を分岐する場合
          に使用します。注意すべきは、この関数の戻り値では p が超技を実行して
          いるかどうかを判別することはできないという点です。
  関連    Cmd設定_超技 (f)
          同期開始_気集中 (f)


１３−７．「防御キャンセル技」扱いの手続き


void  Cmd設定_防御キャンセル技( int p, short mode )

  引数    p  キャラクタ・ハンドラ
          mode  防御キャンセル技指定（ON,OFF）
  説明    この関数は、p のコマンド判定関数内で防御キャンセル技コマンドが成立
          した直後に実行します。mode=ON のとき、成立したコマンドを「防御
          キャンセル技」扱いに設定します。この設定を参照するには
          Cmd取得_防御キャンセル技() を使用します。
  関連    Cmd条件_地上必殺技 (f) など
          CPU_実行_反撃 (m)
          ACT_反撃 (m)


short  Cmd取得_防御キャンセル技( int p )

  戻り値  ON（防御キャンセル技）, OFF（防御キャンセル技でない）
  引数    p  キャラクタ・ハンドラ
  説明    p の成立コマンドが「防御キャンセル技」扱いかどうかを取得します。


..............................................................................
１４．ＣＰＵの思考処理に関する操作


１４−１．ＣＰＵ情報の設定


void  Cpu設定_歩行方向( int p, short keyb )

  引数    p  キャラクタ・ハンドラ
          keyb  方向（KEYB_0〜KEYB_9）
  説明    p が 'ACT_アイドル' のときに一定方向に歩き続ける場合の歩行方向を設定
          します。方向は以下のマクロで指定します。
              KEYB_0 ：ニュートラル
              KEYB_1 ：左下
              KEYB_2 ：下
              KEYB_3 ：右下
              KEYB_4 ：左
              KEYB_6 ：右
              KEYB_7 ：左上
              KEYB_8 ：上
              KEYB_9 ：右上
          この関数は、'CPU_アイドル歩行' のＣＰＵ関数で実行します。
  関連    CPU_アイドル歩行 (m)
          KEYB_... (m)


void  Cpu設定_歩行時間( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  サイクル数（0〜32767）
  説明    p が 'ACT_アイドル' のときに一定方向に歩き続ける場合の歩行時間を設定
          します。時間はサイクル数で指定します。この関数は、
          'CPU_アイドル歩行' のCPU関数で実行します。
  関連    CPU_アイドル歩行 (m)


１４−２．ＣＰＵ情報の取得


CPU_INFO *Cpu取得_CPU情報( int p )

  戻り値  CPU情報へのポインタ
  引数    p  キャラクタ・ハンドラ
  説明    p の CPU情報を取得します。この関数で得られる CPU情報には、
          ＣＯＭ設定_...() で設定されるＣＰＵ制御時の思考パラメータが格納され
          ています。
  関連    ＣＯＭ設定_直立攻撃キャンセル率 (f) など
          Cmd実行_CPU動作２ (f)


short  Cpu取得_思考完了( int p )

  戻り値  ON（思考完了状態）, OFF（思考未完了状態）
  引数    p  キャラクタ・ハンドラ
  説明    p の現在のサイクルにおけるＣＰＵの思考処理の完了状態を取得します。
          この関数は、思考完了フラグを参照しています。次サイクルからの動作が
          既に決定されているならば、これ以降思考処理を続けることは処理負荷を
          重くするだけにしかなりません。これを防ぐために、ＣＰＵ関数では適度に
          思考完了フラグを監視し、完了状態であればＣＰＵ関数からリターンするよ
          うな処理が適度に必要です。
  関連    Cmd実行_地上基本技 (f) など


short  Cpu取得_レベル別確率( short r0, short r1, short r2 )

  戻り値  ON（低い値）, OFF（低い値でない）
  引数    r0  EASY 時の指定値（0〜32767）
          r1  NORMAL 時の指定値（0〜32767）
          r2  HARD 時の指定値（0〜32767）
  説明    乱数（0〜32767）を発生し、その結果が指定値よりも低い値かどうかを取得
          します。ただし、３つの指定値うちどれと比較されるのかは、ＣＰＵの思考
          能力の強さによって決定されます。思考処理では、思考結果を導くのに乱数
          を用いることが多くあります。乱数を扱う上で重要になるのは、ＣＰＵの
          強さによって乱数による的中率を調整する処理です。この関数は、その
          処理を簡単にするために用意されています。
  関連    Cpu取得_思考レベル (f)
          乱数発生 (f)


short  Cpu取得_制御状態( int p )

  戻り値  OFF（人間）, ON（ＣＰＵ）
  引数    p  キャラクタ・ハンドラ
  説明    p のＣＰＵ制御状態を取得します。p は人間が操作しているのかＣＰＵが
          操作しているのかを知ることができます。


short  Cpu取得_思考レベル()

  戻り値  0（EASY）, 1（NORMAOL）, 2（HARD）
  説明    ＣＰＵの思考能力の強さをを取得します。思考能力の強さは、システムの
          環境設定で選択されているものが返ります。
  関連    Cpu取得_レベル別確率 (f)


１４−３．サブ思考関数の操作


short  Cpu実行_サブ思考関数( int p, short cpu_id )

  戻り値  ON（呼び出し成功）, OFF（ＣＰＵ関数が割り当てられていない）
  引数    p  キャラクタ・ハンドラ
          cpu_id  CPU-ID
  説明    p の CPU-ID cpu_id に対応するＣＰＵ関数を実行します。指定することの
          できる CPU-ID の範囲に注意して下さい。この関数は、ＣＰＵ関数をユーザ
          のサブルーチンとして実行する場合に使用します。
  関連    CPU_... (m)


..............................................................................
１５．ゲージに関する操作


１５−１．体力ゲージの操作

    体力ゲージの増減は、基本的にシステムが攻撃側のヒット情報をもとに行います。
  よって「残り体力の回復」というような演出を行うのでなければ、キャラ自身が体力
  ゲージを増減させる必要はありません。


short  ゲージ取得_体力( int p )

  戻り値  体力ゲージ値（0〜88）
  引数    p  キャラクタ・ハンドラ
  説明    p の体力ゲージ値を取得します。
  関連    ゲージ増減_体力 (f)


void  ゲージ増減_体力( int p, short val )

  引数    p  キャラクタ・ハンドラ
          val  増減量（-32768〜32767）
  説明    p の体力ゲージ値を val だけ増減します。ただし、システムが体力ゲージ
          値の増減量を調整するため、必ずしも val と同値または正比例の増減に
          なるとは限りません。
  関連    ゲージ取得_体力 (f)
          VCT_与ダメージ量調整処理 (m)
          VCT_変身条件判定処理 (m)
          VCT_ゲージ調整処理 (m)


１５−２．サブゲージの操作

    サブゲージはデフォルトで飛び道具の残数を表わすようになっていますが、
  'VCT_サブゲージ表示処理' のＶＣＴ関数を上書きすることで、さまざまな用途に
  利用できます。


short  ゲージ取得_サブ( int p )

  戻り値  サブゲージ値（0〜10）
  引数    p  キャラクタ・ハンドラ
  説明    p のサブゲージ値を取得します。サブゲージ値は、デフォルトで飛び道具の
          残数を表しています。
  関連    ゲージ設定_サブ (f)
          ゲージ増減_サブ (f)
          VCT_サブゲージ表示処理 (m)
          VCT_ゲージ調整処理 (m)


void  ゲージ設定_サブ( int p, short val )

  引数    p  キャラクタ・ハンドラ
          val  新しいサブゲージ値（0〜10）
  説明    p のサブゲージ値を val に設定します。デフォルトでは飛び道具の残数が
          変更されます。
  関連    ゲージ取得_サブ (f)
          ゲージ増減_サブ (f)
          VCT_サブゲージ表示処理 (m)
          VCT_ゲージ調整処理 (m)


void  ゲージ増減_サブ( int p, short val )

  引数    p  キャラクタ・ハンドラ
          val  増減量（-10〜10）
  説明    p のサブゲージ値を val だけ増減します。デフォルトでは飛び道具の残数
          が増減されます。
  関連    ゲージ取得_サブ (f)
          ゲージ設定_サブ (f)
          VCT_サブゲージ表示処理 (m)
          VCT_ゲージ調整処理 (m)


１５−３．超技ゲージの操作


short  ゲージ取得_超技( int p )

  戻り値  超技ゲージ値（0〜10）
  引数    p  キャラクタ・ハンドラ
  説明    p の超技ゲージ値を取得します。
  関連    ゲージ増減_超技 (f)
          VCT_超技ゲージ表示処理 (m)
          VCT_ゲージ調整処理 (m)


void  ゲージ増減_超技( int p, short val )

  引数    p  キャラクタ・ハンドラ
          val  増減量（-10〜10）
  説明    p の超技ゲージ値を val だけ増減します。
  関連    ゲージ取得_超技 (f)
          VCT_超技ゲージ表示処理 (m)
          VCT_ゲージ調整処理 (m)


１５−４．非標準ゲージの操作


void  ゲージ表示_非標準( int p, short x, short y, short num, short max )

  引数    p  キャラクタ・ハンドラ
          x  1P側ＢＧ絶対Ｘ座標（0〜31）
          y  1P側ＢＧ絶対Ｙ座標（8〜28）
          num  現在値（0〜40）
          max  最大値（0〜40）
  説明    p の非標準ゲージを表示します。p が 1P側の場合、画面のＢＧ座標（x,y）
          に「左→右」方向の max で指定した長さのゲージを、現在値 num で表示
          します。p が 2P側の場合、画面中央から左右対照になるように表示されま
          す。最大値には 4 の倍数を指定して下さい。非標準ゲージの現在値は
          ユーザが管理する必要があります。また、非標準ゲージの表示位置によって
          はシステムの表示物と衝突する可能性があります。
  関連    VCT_サブゲージ表示処理 (m)


..............................................................................
１６．ユーザＰＣＧの表示に関する操作

    セルとは独立したグラフィックを表示するにはユーザＰＣＧを使用します。飛び
  道具などの身体とは独立した物体を扱うにはＳＨＯＴ機能を利用するのが一般的です
  が、ＳＨＯＴ機能自体はグラフィック表示能力を持っていませんので、表示に関して
  はユーザＰＣＧを使用します。


１６−１．ＰＣＧコードの取得


short  Pcg取得_コード( int p, short pal_blk, short pcg_blk, short pcg_ofs,
                                               short h, short v, short bg )

  戻り値  PCGコード
  引数    p  キャラクタ・ハンドラ
          pal_blk  パレットブロックID
          pcg_blk  PCG格納ブロックID
          pcg_ofs  ＰＣＧデータの先頭からのオフセット番号
          h  水平反転（ON,OFF）
          v  垂直反転（ON,OFF）
          bg  BGモード（ON,OFF）
  説明    p のＰＣＧデータのＰＣＧコードを取得します。pal_blk にはＰＣＧの色と
          して以下のいずれかを指定します。
              PAL_BLK_表示_身体
              PAL_BLK_表示_ＰＣＧ
              PAL_BLK_表示_グラデ
              PAL_BLK_表示_残像
              PAL_BLK_表示_フェイス
              PAL_BLK_SYS_ネーム
              PAL_BLK_SYS_影
          pcg_blk にはＰＣＧデータとして以下のいずれかを指定します。
              PCG_BLK_ユーザ
              PCG_BLK_身体１
              PCG_BLK_身体２
          pcg_ofs にはＰＣＧデータの先頭からのオフセット番号を指定します。
          h, v で反転指示ができ、ON を指定すると表示時にグラフィックが反転され
          ます。bg に ON を指定するとＢＧ画面に表示するためのＰＣＧコードを得
          られます。
  技術    ＢＧ画面に表示するためのＰＣＧコードは、ＳＰ画面表示用のＰＣＧコード
          のオフセット値が４倍されたものになります。ＢＧ画面にＰＣＧを表示する
          にはＢＧ画面に関する知識が必要になります。特別な理由がない限りＢＧ
          画面には表示しない（bg=OFF）で下さい。
  関連    Pcg取得_反転 (f)
          PAL_BLK_... (m)
          PCG_BLK_... (m)


short  Pcg取得_反転( short pcg_code, short h, short v )

  戻り値  反転後のＰＣＧコード
  引数    pcg_code  元のＰＣＧコード
          h  水平反転方向（DRCT_左,DRCT_中,DRCT_右）
          v  垂直反転方向（DRCT_上,DRCT_中,DRCT_下）
  説明    pcg_code の反転方向を操作します。'DRCT_中' を指定すると pcg_code の
          反転方向は変化しません。この関数は、反転方向を「左右、上下」で指定
          できるため、状態取得_表示方向() などの戻り値をそのまま反転方向として
          指定することができます。
  関連    Pcg取得_コード (f)
          DRCT_... (m)


１６−２．ＰＣＧデータの設定


void  Pcg設定_標準データ( int p, char *data, short ofs, short num )

  引数    p  キャラクタ・ハンドラ
          data  転送元ＰＣＧデータ
          ofs  転送先の先頭からのオフセット番号（0〜7）
          num  転送するＰＣＧの個数（0〜8）
  説明    p の標準データを設定します。ＰＣＧデータ data が標準PCG格納ブロック
          の先頭から ofs の場所に num 個転送されます。
  技術    ＰＣＧデータは１個当たり 128バイトのサイズです。すなわち標準データの
          最大サイズは 1024バイトになります。
  関連    Pcg設定_身体データ (f)


void  Pcg設定_身体データ( int p, char *data, short ofs,
                                               short num, short page )

  引数    p  キャラクタ・ハンドラ
          data  転送元ＰＣＧデータ
          ofs  転送先の先頭からのオフセット番号（0〜31）
          num  転送するＰＣＧの個数（0〜32）
          page  身体PCG格納ブロックのページ指定（0,1）
  説明    p の身体データを設定します。ＰＣＧデータ data が身体PCG格納ブロック
          の先頭から ofs の場所に num 個転送されます。身体PCG格納ブロックは、
          １キャラ当たり２ページ用意されていますので、page でどちらのページに
          転送するかを指定します。
  技術    身体PCG格納ブロックは３２個分のＰＣＧを格納できます。システムはここ
          に現在表示しているセルのグラフィックデータを転送しますが、転送は
          ブロックの先頭から行われるためブロックの後部には転送されない領域が
          発生します。この領域をセル表示以外の用途にユーザが使用できるように
          この関数が用意されています。
  関連    Pcg設定_標準データ (f)


void  Pcg転送_セル画像( int p, short cell_id, short pcg_blk,
                                 short pcg_ofs, short pcg_num )

  引数    p  キャラクタ・ハンドラ
          cell_id  CELL-ID（0〜1023）
          pcg_blk  転送先ＰＣＧ格納ブロックID
          pcg_ofs  転送先ＰＣＧ格納ブロックの先頭からのオフセット番号
          pcg_num  最大転送ＰＣＧ個数
  説明    p の登録したセル cell_id に関連付けられているＰＣＧデータ（リソース
          「ＣＨＡＲ−ＡＳＰ」）をＰＣＧデータ格納領域 pcg_blk の先頭から
          pcg_ofs 個目の位置以降に転送します。ただし、転送されるＰＣＧデータの
          個数が pcg_num を超えると転送を終了します。pcg_blk には以下のいずれ
          かを指定します。
              PCG_BLK_ユーザ
              PCG_BLK_身体１
              PCG_BLK_身体２
          ＰＣＧデータはＡＳＰ形式の圧縮がデコードされた状態で転送されますが、
          ＡＳＰエンコードの一つ「ＰＣＧ圧縮」だけはデコードされません。そのた
          め実際に転送されるＰＣＧデータの個数は、セルのＰＣＧサイズで算出され
          るＰＣＧ個数よりも少ない場合があります。
  技術    「ＰＣＧ圧縮」がデコードされないため、標準よりも大きなセル画像を表示
          設定する処理がユーザにとって容易になります。
  関連    Shot設定_表示セル() (f)


char  *Pcg取得_定義領域( int p, short pcg_blk, short pcg_ofs )

  戻り値  定義領域へのポインタ
  引数    p  キャラクタ・ハンドラ
          pcg_blk  ＰＣＧ格納ブロックID
          pcg_ofs  ＰＣＧ格納ブロックの先頭からのオフセット番号
  説明    p のPCG格納ブロックの先頭から ofs の場所の実際のアドレスを取得しま
          す。


１６−３．パレットデータの設定

    各キャラがＰＣＧを表示する時に指定するパレットデータは、リソースファイル
  'CHAR.PAL' の内容をシステムが展開したもので、これを内部データと呼びます。
  内部データはバッファであり、実際に画面に影響のあるパレットデータは表示データ
  と呼ばれるものです。内部データを表示データの格納領域に転送することで、画面に
  反映させることができます。


void  Pal設定_表示データ( int p, short pal_blk, char *data )

  引数    p  キャラクタ・ハンドラ
          pal_blk  転送先のパレットブロックID
          data  パレットデータ
  説明    p の表示データを設定します。パレットデータ data がパレットブロック
          pal_blk に転送されます。 pal_blk には以下のいずれかを指定します。
              PAL_BLK_表示_身体
              PAL_BLK_表示_残像
              PAL_BLK_表示_ＰＣＧ
              PAL_BLK_表示_グラデ
              PAL_BLK_表示_フェイス
  技術    パレットデータは１ブロック当たり 32バイトのサイズです。
  関連    Pal設定_内部データ (f)
          Pal取得_内部データ (f)
          Pal取得_内部データ２ (f)


void  Pal設定_内部データ( int p, short pal_blk, char *data )

  引数    p  キャラクタ・ハンドラ
          pal_blk  転送先のパレットブロックID
          data  パレットデータ
  説明    p の内部データを設定します。パレットデータ data がパレットブロック
          pal_blk に転送されます。 pal_blk には以下のいずれかを指定します。
              PAL_BLK_内部_通常
              PAL_BLK_内部_変身
              PAL_BLK_内部_残像
              PAL_BLK_内部_白黒
              PAL_BLK_内部_燃焼１
              PAL_BLK_内部_燃焼２
              PAL_BLK_内部_燃焼３
              PAL_BLK_内部_ＰＣＧ1
              PAL_BLK_内部_ＰＣＧ2
              PAL_BLK_内部_グラデ
  関連    Pal設定_表示データ (f)
          Pal取得_内部データ (f)
          Pal取得_内部データ２ (f)


void  Pal設定_身体燃焼色( int p, short pal_num )

  引数    p  キャラクタ・ハンドラ
          pal_num  パレット番号（0〜2）
  説明    p の表示データ（PAL_BLK_表示_身体）に身体燃焼色の内部データを転送し
          ます。３つの燃焼色のうちどれを転送するかは pal_num で指定します。
              pal_num=0 : PAL_BLK_内部_燃焼１
              pal_num=1 : PAL_BLK_内部_燃焼２
              pal_num=2 : PAL_BLK_内部_燃焼３
          この関数は、主に 'VCT_燃焼処理' のＶＣＴ関数内で実行します。
  関連    Pal設定_表示データ (f)
          Pal取得_内部データ (f)
          VCT_燃焼処理 (m)


void  Pal設定_PCG色( int p, short pal_num )

  引数    p  キャラクタ・ハンドラ
          pal_num  パレット番号（1,2）
  説明    p の表示データ（PAL_BLK_表示_ＰＣＧ）にＰＣＧ色の内部データを転送し
          ます。２つのＰＣＧ色のうちどちらを転送するかは pal_num で指定しま
          す。
              pal_num=1 : PAL_BLK_内部_ＰＣＧ1
              pal_num=2 : PAL_BLK_内部_ＰＣＧ2
  関連    Pal設定_表示データ (f)
          Pal取得_内部データ (f)


void  Pal設定_身体変身色( int p, short pal_num )

  引数    p  キャラクタ・ハンドラ
          pal_num  パレット番号（0：通常色,1：変身色）
  説明    p の表示データ（PAL_BLK_表示_身体）に身体身体色の内部データを転送し
          ます。２つの身体色のうちどちらを転送するかは pal_num で指定します。
              pal_num=0 : PAL_BLK_内部_通常
              pal_num=1 : PAL_BLK_内部_変身
          この関数は、主に 'SUB_変身' のＳＵＢ関数内で実行します。
  関連    Pal設定_表示データ (f)
          Pal取得_内部データ (f)
          SUB_変身 (m)


１６−４．パレットデータの取得


char  *Pal取得_表示データ( int p, short pal_blk, short pal_ofs )

  引数    p  キャラクタ・ハンドラ
          pal_blk  パレットブロックID
          pal_ofs  パレットブロックの先頭からのオフセット番号
  説明    p のパレットブロック pal_blk の表示データ格納領域のアドレスを取得します。
              PAL_BLK_表示_身体
              PAL_BLK_表示_残像
              PAL_BLK_表示_ＰＣＧ
              PAL_BLK_表示_グラデ
              PAL_BLK_表示_フェイス
  関連    Pal設定_表示データ (f)


char *Pal取得_内部データ( int p, short pal_blk )

  戻り値  パレットデータへのポインタ
  引数    p  キャラクタ・ハンドラ
          pal_blk  パレットブロックID
  説明    p の内部データ（パレットブロック pal_blk）を取得します。pal_blk には
          以下のいずれかを指定します。
              PAL_BLK_内部_通常
              PAL_BLK_内部_変身
              PAL_BLK_内部_残像
              PAL_BLK_内部_白黒
              PAL_BLK_内部_燃焼１
              PAL_BLK_内部_燃焼２
              PAL_BLK_内部_燃焼３
              PAL_BLK_内部_ＰＣＧ1
              PAL_BLK_内部_ＰＣＧ2
              PAL_BLK_内部_グラデ
  関連    Pal取得_内部データ２ (f)
          Pal設定_表示データ (f)
          Pal設定_内部データ (f)


void  Pal取得_内部データ２( int p, short pal_blk, char *buf )

  引数    p  キャラクタ・ハンドラ
          pal_blk  パレットブロックID
          buf  パレットデータ格納バッファ
  説明    p の内部データ（パレットブロック pal_blk）を buf に転送します。
          pal_blk には以下のいずれかを指定します。
              PAL_BLK_内部_通常
              PAL_BLK_内部_変身
              PAL_BLK_内部_残像
              PAL_BLK_内部_白黒
              PAL_BLK_内部_燃焼１
              PAL_BLK_内部_燃焼２
              PAL_BLK_内部_燃焼３
              PAL_BLK_内部_ＰＣＧ1
              PAL_BLK_内部_ＰＣＧ2
              PAL_BLK_内部_グラデ
  関連    Pal取得_内部データ (f)
          Pal設定_表示データ (f)
          Pal設定_内部データ (f)


１６−５．パレットデータの変換

void  Pal変換_ＲＧＢ増減( char *data, short num, short d,
                                        short r, short g, short b )

  引数    data  パレットデータ格納領域
          num  パレットデータの個数
          d  増減量（-31〜31）
          r  Ｒ成分の明るさの上限（0〜31）
          g  Ｇ成分の明るさの上限（0〜31）
          b  Ｂ成分の明るさの上限（0〜31）
  説明    data の num 個分のパレットデータの明るさを d だけ増減させます。ただ
          し、(r,g,b) 成分で指定した明るさが上限となります。


short  Pal変換_ＲＧＢtoＣＯＬ( short r, short g, short b )

  戻り値  カラーコード（0〜32767）
  引数    r  Ｒ成分（0〜31）
          g  Ｇ成分（0〜31）
          b  Ｂ成分（0〜31）
  説明    (r,g,b) 成分を合成したカラーコードを取得します。


１６−６．スプライト画面への表示

    画面上で動く物体は、ほとんどの場合スプライト画面に表示されています。スプラ
  イト画面とは、16x16ドット・16色という表現力をもつ正方形の小さな画面のこと
  で、１２８面用意されています。この１２８面は、システム・２キャラ間で共有され
  ており、誰がどのスプライト画面を使うかはシステムが調停しています。各スプライ
  ト画面は 0〜127 の通し番号（ＳＰ番号）で識別でき、スプライト画面に表示を行う
  ときにはＳＰ番号を指定する必要があります。各キャラに割り当てられているスプラ
  イト画面は、連続する画面で構成される以下の３つのブロックです。
      SP_BLK_身体  ・・・・・  身体を表示する（３２面）
      SP_BLK_飛び道具  ・・・  ユーザＰＣＧを表示する（８面）
      SP_BLK_残像  ・・・・・  身体の残像を表示する（３２面）
  ただし、'SP_BLK_身体' と 'SP_BLK_残像' にはシステムがセルのグラフィックを、
  ブロックの先頭から必要な画面数だけ表示します。システムとの競合を避けて表示
  するには、ブロックの最後（先頭ＳＰ番号＋３１）から負の方向に表示してやる必要
  があります。


short  Spr取得_番号( int p, short sp_blk )

  戻り値  ＳＰ番号
  引数    p  キャラクタ・ハンドラ
          sp_blk  SPブロックID
  説明    p の使用可能なスプライト画面のブロック sp_blk の先頭ＳＰ番号を取得
          します。sp_blk には以下のいずれかを指定します。
              SP_BLK_身体
              SP_BLK_飛び道具
              SP_BLK_残像
  関連    Spr設定_表示 (f)


void  Spr設定_表示( short sp_num, short x, short y,
                                             short pcg_code, short pri )

  引数    sp_num  ＳＰ番号
          x  絶対Ｘ座標（-32768〜32767）
          y  絶対Ｙ座標（-32768〜32767）
          pcg_code  ＰＣＧコード
          pri  優先度（1）
  説明    pcg_code で指定されたＰＣＧデータをスプライト画面 sp_num に表示し、
          表示位置を絶対座標(x,y) に設定します。pri には必ず 1 を指定して下さ
          い。この関数で表示されるのは現在のサイクルのみです。
  関連    Spr取得_番号 (f)


void  Spr設定_消去( short sp_num )

  引数    sp_num  ＳＰ番号
  説明    スプライト画面 sp_num の表示設定を取り消します。
  関連    Spr設定_表示 (f)


１６−７．バックグラウンド画面への表示

    バックグラウンド画面（ＢＧ画面）とは、横３２個・縦３２個のＰＣＧデータの
  マトリクスで構成される画面です。ＢＧ画面には、各種ゲージや各種メッセージなど
  が表示されていますが、システムとキャラの間でＢＧ画面への表示位置について調停
  が取られていません。そのため、システムとキャラの表示しようとしたＰＣＧが衝突
  していまうこともありますので、キャラが注意しなくてはいけません。


void  Bkg設定_表示( short x, short y, short pcg_code )

  引数    x  ＢＧ系絶対Ｘ座標（0〜31）
          y  ＢＧ系絶対Ｙ座標（8〜28）
          pcg_code  ＰＣＧコード
  説明    ＢＧ画面の座標（x,y）にＰＣＧ pcg_code を表示します。pcg_code には、
          Pcg取得_コード(bg=ON) で取得したコードを指定します。
  関連    Pcg取得_コード (f)
          Pcg取得_反転 (f)


..............................................................................
１７．ＳＨＯＴ機能に関する操作


１７−１．SHOTモジュールの管理


void  Shot登録_モジュール( int p, SHOT *shot, short (*proc)(int p1, int p2,
                           SHOT *shot, short act, short param1, short param2),
                             short sk )

  引数    p  キャラクタ・ハンドラ
          shot  SHOT変数へのポインタ
          proc  SHOT関数
          sk  割り当てるサブキー値（0〜32767）
  説明    SHOTモジュールを新規登録します。shot には、SHOTモジュールに関する
          情報を格納する SHOT変数へのポインタを指定します。なお、この時点では
          SHOT変数に意味のある値が設定してある必要はありません。proc には、
          この SHOTモジュールが受信したコマンドを処理する関数（SHOT関数）を
          指定します。sk には、同一の SHOT関数が指定されている SHOTモジュール
          間で一意になるような値を指定します。同一の SHOT関数を指定していなけ
          れば sk には適当な値を指定してかまいません。登録完了後、SHOT変数への
          ポインタ shot が SHOTモジュールハンドラとなります。
  関連    SHOT (t)
          SHOTのメンバ sub_key (t)


SHOT  *Shot取得_標準ハンドラ( int p )

  戻り値  SHOTモジュールハンドラ
  引数    p  キャラクタ・ハンドラ
  説明    p が標準装備している SHOTモジュールの SHOTモジュールハンドラを取得し
          ます。
  技術    システムは各キャラに１つだけ、新規登録が不要な SHOTモジュールを用意
          しています。デフォルトのＣＰＵ思考処理では、この標準装備の SHOTモ
          ジュールに対して処理を行っています。つまり、ユーザが新規登録したSHOT
          モジュールをＣＰＵ制御のキャラが扱うにはＣＰＵ思考処理の変更（すなわ
          ちＣＰＵ関数の上書き）が必要になります。これが面倒であれば、極力、
          標準装備の SHOTモジュールを使用すべきです。
          ちなみに、Release 8 以前のＡＰＩ関数を使用したキャラが生成する飛び
          道具の実態はこの標準装備の SHOTモジュールです。
  関連    SHOT (t)


void  Shot設定_標準SHOT関数( int p, short (*proc)(int p1, int p2,
                             SHOT *shot, short act,
                               short param1, short param2) )

  引数    p  キャラクタ・ハンドラ
          proc  SHOT関数
  説明    p が標準装備している SHOTモジュールが受信したコマンドを処理するため
          の関数（SHOT関数）を指定します。標準装備の SHOTモジュールを使用しな
          い場合は、SHOT関数を設定する必要はありません。
  技術    システムは標準装備の SHOTモジュールに対してデフォルトの SHOT関数を
          設定しています。この SHOT関数は、Release 8 以前のＡＰＩ関数を使用し
          たキャラが生成する飛び道具を処理できるようになっています。
  関連    Shot取得_標準ハンドラ (f)
          SHOT (t)
          SHOT_CMD_... (m)


１７−２．SHOTモジュールの属性設定


void  Shot設定_モジュール状態( SHOT *shot, short state )

  引数    shot  SHOTモジュールハンドラ
          state  状態コード（SHOT_STATE_...）
  説明    SHOTモジュール shot の属性を設定します。shot の状態を state に設定し
          ます。
  関連    SHOTのメンバ state (t)
          SHOT_STATE_... (m)
          Shot取得_モジュール状態 (f)


void  Shot設定_特性タイプ( SHOT *shot, short type )

  引数    shot  SHOTモジュールハンドラ
          state  特性タイプ（SHOT_TYPE_...）
  説明    SHOTモジュール shot の属性を設定します。shot の特性タイプを type に
          設定します。以下のコーディングと同等の処理を行います。
              shot->type=type;
  関連    SHOTのメンバ type (t)
          SHOT_TYPE_... (m)
          Shot取得_特性タイプ (f)


void  Shot設定_Ｘ座標( SHOT *shot, short pos )

  引数    shot  SHOTモジュールハンドラ
          pos  絶対Ｘ座標（-32768〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot の絶対Ｘ座標を pos に設
          定します。以下のコーディングと同等の処理を行います。
              shot->pos_x=pos;
  関連    SHOTのメンバ pos_x (t)
          Shot設定_セル座標 (f)
          Shot取得_Ｘ座標 (f)


void  Shot設定_Ｙ座標( SHOT *shot, short pos )

  引数    shot  SHOTモジュールハンドラ
          pos  絶対Ｙ座標（-32768〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot の絶対Ｙ座標を pos に設
          定します。以下のコーディングと同等の処理を行います。
              shot->pos_y=pos;
  関連    SHOTのメンバ pos_y (t)
          Shot設定_セル座標 (f)
          Shot取得_Ｙ座標 (f)


void  Shot設定_Ｘ方向( SHOT *shot, short drct )

  引数    shot  SHOTモジュールハンドラ
          drct  水平方向（DRCT_右,DRCT_中,DRCT_左）
  説明    SHOTモジュール shot の属性を設定します。shot の水平方向を drct に設
          定します。以下のコーディングと同等の処理を行います。
              shot->drct=drct;
  関連    SHOTのメンバ drct (t)
          DRCT_... (m)
          Shot取得_Ｘ方向 (f)


void  Shot設定_Ｙ方向( SHOT *shot, short drct )

  引数    shot  SHOTモジュールハンドラ
          drct  垂直方向（DRCT_上,DRCT_中,DRCT_下）
  説明    SHOTモジュール shot の属性を設定します。shot の垂直方向を drct に設
          定します。以下のコーディングと同等の処理を行います。
              shot->drct_ud=drct;
  関連    SHOTのメンバ drct_ud (t)
          DRCT_... (m)
          Shot取得_Ｙ方向 (f)


void  Shot設定_方向反転( SHOT *shot, short h, short v )

  引数    shot  SHOTモジュールハンドラ
          h  水平反転指示（ON,OFF）
          v  垂直反転指示（ON,OFF）
  説明    SHOTモジュール shot の属性を設定します。h,v が ON ならば、shot の
          水平垂直方向をそれぞれ反転させます。
  関連    SHOTのメンバ drct (t)
          SHOTのメンバ drct_ud (t)


void  Shot設定_重なり数( SHOT *shot, short num )

  引数    shot  SHOTモジュールハンドラ
          num  重なり数（0〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot の論理的な重なり数を
          num に設定します。以下のコーディングと同等の処理を行います。
              shot->multi=num;
  関連    SHOTのメンバ multi (t)
          Shot増減_重なり数 (f)
          Shot取得_重なり数 (f)


short  Shot増減_重なり数( SHOT *shot, short num )

  戻り値  増減後の重なり数（0〜32767）
  引数    shot  SHOTモジュールハンドラ
          num  増減数（-32768〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot の論理的な重なり数を
          num だけ増減させます。以下のコーディングと同等の処理を行います。
              (shot->multi+=num)
  関連    SHOTのメンバ multi (t)
          Shot設定_重なり数 (f)
          Shot取得_重なり数 (f)


void  Shot設定_超技フラグ( SHOT *shot, short mode )

  引数    shot  SHOTモジュールハンドラ
          mode  超技フラグ（ON,OFF）
  説明    SHOTモジュール shot の属性を設定します。shot の超技フラグを mode に
          設定します。以下のコーディングと同等の処理を行います。
              shot->super=mode;
  関連    SHOTのメンバ super (t)
          Shot取得_超技フラグ (f)


void  Shot設定_ＳＰ番号( SHOT *shot, short sp_num )

  引数    shot  SHOTモジュールハンドラ
          sp_num  スプライト番号（Spr取得_番号() の戻り値）
  説明    SHOTモジュール shot の属性を設定します。shot の表示に使用するスプラ
          イト番号を sp_num に設定します。sp_num には Spr取得_番号() の戻り値
          を指定します。以下のコーディングと同等の処理を行います。
              shot->sp_num=sp_num;
  関連    SHOTのメンバ sp_num (t)
          Shot取得_ＳＰ番号 (f)
          Spr取得_番号 (f)


void  Shot設定_ＰＣＧコード( SHOT *shot, short pcg_code )

  引数    shot  SHOTモジュールハンドラ
          pcg_code  ＰＣＧコード（Spr取得_番号() の戻り値）
  説明    SHOTモジュール shot の属性を設定します。shot の表示に使用するＰＣＧ
          コードを pcg_code に設定します。pcg_code には
          Shot取得_ＰＣＧコード() の戻り値を指定します。以下のコーディングと同
          等の処理を行います。
              shot->pcg_num=pcg_code;
  関連    SHOTのメンバ pcg_num (t)
          Shot取得_ＰＣＧコード (f)
          Pcg取得_コード (f)


void  Shot設定_ヒット情報( SHOT *shot, short hit_id )

  引数    shot  SHOTモジュールハンドラ
          hit_id  ヒットＩＤ（HIT_...）
  説明    SHOTモジュール shot の属性を設定します。shot のヒット情報を HIT-ID
          hit_id で指定します。
  関連    SHOTのメンバ hit_info (t)
          HIT_... (m)
          Shot設定_くらい動作 (f)


void  Shot設定_くらい動作( SHOT *shot, short act_id )

  引数    shot  SHOTモジュールハンドラ
          act_id  くらい動作（ACT_...）
  説明    SHOTモジュール shot の属性を設定します。shot のヒット情報における
          「くらい動作」を ACT-ID act_id に設定します。この関数は、shot に
          ヒット情報が設定されている状態で実行して下さい。
  関連    SHOTのメンバ hit_info (t)
          ACT_... (m)
          Shot設定_ヒット情報 (f)


void  Shot移動_相対方向( SHOT *shot, short dx, short dy )

  引数    shot  SHOTモジュールハンドラ
          dx  水平移動ポイント数（-32768〜32767）
          dy  垂直移動ポイント数（-32768〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot の絶対座標を shot の方
          向に dx,dy だけ移動させます。
  関連    SHOTのメンバ pos_x (t)
          SHOTのメンバ pos_y (t)
          SHOTのメンバ drct (t)
          SHOTのメンバ drct_ud (t)
          Shot設定_Ｘ座標 (f)
          Shot設定_Ｙ座標 (f)


void  Shot移動_絶対方向( SHOT *shot, short dx, short dy )

  引数    shot  SHOTモジュールハンドラ
          dx  水平移動ポイント数（-32768〜32767）
          dy  垂直移動ポイント数（-32768〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot の絶対座標を画面の座標
          系に対して dx,dy だけ移動させます。以下のコーディングと同等の処理を
          行います。
              shot->pos_x+=dx;
              shot->pos_y+=dy;
  関連    SHOTのメンバ pos_x (t)
          SHOTのメンバ pos_y (t)
          Shot設定_Ｘ座標 (f)
          Shot設定_Ｙ座標 (f)


void  Shot設定_カウンタ( SHOT *shot, short val )

  引数    shot  SHOTモジュールハンドラ
          val  カウンタ値（-32768〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot のカウンタ値を val に設
          定します。以下のコーディングと同等の処理を行います。
              shot->counter=val;
  関連    SHOTのメンバ counter (t)
          Shot増減_カウンタ() (f)
          Shot増加_カウンタ() (f)
          Shot減少_カウンタ() (f)
          Shot取得_カウンタ() (f)


short  Shot増減_カウンタ( SHOT *shot, short val )

  戻り値  増減後のカウンタ値（0〜32767）
  引数    shot  SHOTモジュールハンドラ
          val  カウンタ値（-32768〜32767）
  説明    SHOTモジュール shot の属性を設定します。shot のカウンタ値を val だけ
          増減させます。以下のコーディングと同等の処理を行います。
              (shot->counter+=val)
  関連    SHOTのメンバ counter (t)
          Shot設定_カウンタ() (f)
          Shot増加_カウンタ() (f)
          Shot減少_カウンタ() (f)
          Shot取得_カウンタ() (f)


short  Shot増加_カウンタ( SHOT *shot )

  戻り値  増加後のカウンタ値（0〜32767）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を設定します。shot のカウンタ値を +1 させ
          ます。以下のコーディングと同等の処理を行います。
              (shot->counter++)
  関連    SHOTのメンバ counter (t)
          Shot設定_カウンタ() (f)
          Shot増減_カウンタ() (f)
          Shot減少_カウンタ() (f)
          Shot取得_カウンタ() (f)


short  Shot減少_カウンタ( SHOT *shot )

  戻り値  減少後のカウンタ値（0〜32767）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を設定します。shot のカウンタ値を -1 させ
          ます。以下のコーディングと同等の処理を行います。
              (shot->counter--)
  関連    SHOTのメンバ counter (t)
          Shot設定_カウンタ() (f)
          Shot増減_カウンタ() (f)
          Shot増加_カウンタ() (f)
          Shot取得_カウンタ() (f)


１７−３．SHOTモジュールの属性取得


short  Shot取得_モジュール状態( SHOT *shot )

  戻り値  状態コード（SHOT_STATE_...）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の状態が状態コードで
          返ります。
  関連    SHOTのメンバ state (t)
          SHOT_STATE_... (m)
          Shot設定_モジュール状態 (f)


short  Shot取得_特性タイプ( SHOT *shot )

  戻り値  特性タイプ（SHOT_TYPE_...）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の特性タイプが返りま
          す。以下のコーディングでも同等の値が取得できます。
              (shot->type)
  関連    SHOTのメンバ type (t)
          SHOT_TYPE_... (m)
          Shot設定_特性タイプ (f)


short  Shot取得_Ｘ座標( SHOT *shot )

  戻り値  絶対Ｘ座標（-32768〜32767）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の絶対Ｘ座標が返りま
          す。以下のコーディングでも同等の値が取得できます。
              (shot->pos_x)
  関連    SHOTのメンバ pos_x (t)
          Shot設定_Ｘ座標 (f)


short  Shot取得_Ｙ座標( SHOT *shot )

  戻り値  絶対Ｙ座標（-32768〜32767）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の絶対Ｙ座標が返りま
          す。以下のコーディングでも同等の値が取得できます。
              (shot->pos_y)
  関連    SHOTのメンバ pos_y (t)
          Shot設定_Ｙ座標 (f)


short  Shot取得_Ｘ方向( SHOT *shot )

  戻り値  水平方向（DRCT_右,DRCT_中,DRCT_左）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の水平方向が返ります。
          以下のコーディングでも同等の値が取得できます。
              (shot->drct)
  関連    SHOTのメンバ drct (t)
          Shot設定_Ｘ方向 (f)


short  Shot取得_Ｙ方向( SHOT *shot )

  戻り値  垂直方向（DRCT_上,DRCT_中,DRCT_下）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の垂直方向が返ります。
          以下のコーディングでも同等の値が取得できます。
              (shot->drct_ud)
  関連    SHOTのメンバ drct_ud (t)
          Shot設定_Ｙ方向 (f)


short  Shot取得_重なり数( SHOT *shot )

  戻り値  重なり数（0〜32767）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の論理的な重なり数が返
          ります。以下のコーディングでも同等の値が取得できます。
              (shot->multi)
  関連    SHOTのメンバ multi (t)
          Shot設定_重なり数 (f)
          Shot増減_重なり数 (f)


short  Shot取得_超技フラグ( SHOT *shot )

  戻り値  超技フラグ（ON,OFF）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の超技フラグが返りま
          す。以下のコーディングでも同等の値が取得できます。
              (shot->super)
  関連    SHOTのメンバ super (t)
          Shot設定_超技フラグ (f)


short  Shot取得_ＳＰ番号( SHOT *shot )

  戻り値  スプライト番号（0〜127）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の表示用のスプライト番
          号が返ります。以下のコーディングでも同等の値が取得できます。
              (shot->sp_num)
  関連    SHOTのメンバ sp_num (t)
          Shot設定_ＳＰ番号 (f)


short  Shot取得_ＰＣＧコード( SHOT *shot )

  戻り値  ＰＣＧコード（0x0000〜0xFFFF）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot の表示用のＰＣＧコード
          が返ります。以下のコーディングでも同等の値が取得できます。
              (shot->pcg_num)
  関連    SHOTのメンバ pcg_num (t)
          Shot設定_ＰＣＧコード (f)


HIT_INFO  *Shot取得_ヒット情報( SHOT *shot )

  戻り値  ヒット情報へのポインタ
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot のヒット情報が返りま
          す。以下のコーディングでも同等の値が取得できます。
              (shot->hit_info)
  関連    SHOTのメンバ hit_info (t)
          Shot設定_ヒット情報 (f)


short  Shot取得_カウンタ( SHOT *shot )

  戻り値  カウンタ値（-32768〜32767）
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot のカウンタ値が返りま
          す。以下のコーディングでも同等の値が取得できます。
              (shot->counter)
  関連    SHOTのメンバ counter (t)
          Shot設定_カウンタ (f)
          Shot増減_カウンタ (f)
          Shot増加_カウンタ (f)
          Shot減少_カウンタ (f)


void  Shot取得_被衝突矩形( int p, short *x1, short *x2,
                                               short *y1, short *y2 )

  引数    p  キャラクタ・ハンドラ
          x1  絶対Ｘ座標（左）を格納する変数へのポインタ
          x2  絶対Ｘ座標（右）を格納する変数へのポインタ
          y1  絶対Ｙ座標（上）を格納する変数へのポインタ
          y2  絶対Ｙ座標（下）を格納する変数へのポインタ
  説明    p の登録した SHOTモジュールに対して最後に衝突した相手の SHOTモジュー
          ルの矩形座標を取得します。この関数で得られる座標が正しいのは、
          SHOT関数の 'SHOT_CMD_対SHOT衝突' コマンドに応答するための処理部で
          実行したときのみです。衝突した相手の SHOTモジュールの座標に応じで
          ヒットマークの表示方法を変更する場合などに使用します。
  関連    SHOT_CMD_対SHOT衝突 (m)
          SHOT_CMD_対身体衝突 (m)


short  Shot調査_表示領域外( SHOT *shot,
                              short x1, short x2, short y1, short y2 )

  戻り値  調査結果（ON,OFF）
  引数    shot  SHOTモジュールハンドラ
          x1  画面有効領域の左上からの水平オフセット数（-32768〜32767）
          x2  画面有効領域の左下からの水平オフセット数（-32768〜32767）
          y1  画面有効領域の右上からの垂直オフセット数（-32768〜32767）
          y2  画面有効領域の右下からの垂直オフセット数（-32768〜32767）
  説明    SHOTモジュール shot の表示矩形が有効領域 (0+x1,0+y1)-(255+x2,255+y2)
          に１ドットでも含まれているかどうかをを取得します。含まれていないなら
          ば ON を返します。


１７−４．SHOTモジュールのコマンド操作


void  Shot送信_コマンド( SHOT *shot, short cmd,
                                       short param1, short param2 )

  引数    shot  SHOTモジュールハンドラ
          cmd  コマンド（SHOT_CMD_...）
          param1  コマンドを受信した SHOT関数の第１パラメータ
          param2  コマンドを受信した SHOT関数の第２パラメータ
  説明    SHOTモジュール shot をコマンド操作します。cmd には送信するコマンドを
          指定します。ただし、以下のコマンドは適切なタイミングでシステムが送信
          するようになっていますので、ユーザが送信する場合はシステムに関する知
          識が必要になります。
              SHOT_CMD_状態変化
              SHOT_CMD_表示
              SHOT_CMD_対SHOT衝突
              SHOT_CMD_対身体衝突
              SHOT_CMD_くらい動作変更
              SHOT_CMD_背景スクロール
  関連    SHOT_CMD_... (m)


１７−５．SHOT機能専用のセル制御


void  Shot設定_セル情報( SHOT *shot, short cell_id )

  引数    shot  SHOTモジュールハンドラ
          cell_id  セルＩＤ（CELL_...）
  説明    SHOTモジュール shot の属性を設定します。shot のセル情報を CELL-ID
          cell_id で指定します。
  関連    SHOTのメンバ cell_info (t)
          CELL_... (m)
          Shot取得_セル情報 (f)


void  Shot設定_セル座標( SHOT *shot )

  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot に設定されたセル情報を元に、shot の以下の属性を
          設定します。
              ・shot->pos_x
              ・shot->pos_y
          この関数を使用する前に Shot設定_セル情報() でセル情報を設定しておく
          ことが必要です。
  関連    Shot設定_セル情報 (f)
          Shot設定_セル矩形 (f)


void  Shot設定_セル矩形( SHOT *shot )

  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot に設定されたセル情報を元に、shot の以下の属性を
          設定します。
              ・shot->rect_x
              ・shot->rect_y
              ・shot->rect_w
              ・shot->rect_h
              ・shot->len_x
              ・shot->len_y
              ・shot->rev_x
              ・shot->rev_y
          この関数を使用する前に Shot設定_セル情報() でセル情報を設定しておく
          ことが必要です。
  関連    Shot設定_セル情報 (f)
          Shot設定_セル座標 (f)


void  Shot設定_表示セル( SHOT *shot )

  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot に設定されたセル情報を元に、shot のグラフィック
          の画面表示設定を行います。この関数を使用する前に、以下の関数で表示に
          関する情報を設定しておくことが必要です。
              ・Shot設定_Ｘ方向()
              ・Shot設定_ＳＰ番号()
              ・Shot設定_ＰＣＧコード()
              ・Shot設定_セル情報()
              ・Shot設定_セル座標()
              ・Shot設定_セル矩形()
  関連    Pcg転送_セル画像 (f)


CELL  *Shot取得_セル情報( SHOT *shot )

  戻り値  セル情報へのポインタ
  引数    shot  SHOTモジュールハンドラ
  説明    SHOTモジュール shot の属性を取得します。shot のセル情報が返ります。
          以下のコーディングでも同等の値が取得できます。
              (shot->cell_info)
  関連    SHOTのメンバ cell_info (t)
          Shot設定_セル情報 (f)


１７−６．SHOT機能専用の効果演出


void  Shot演出_ヒット音( SHOT *shot, short voice_id )

  引数    shot  SHOTモジュールハンドラ
          voice_id  防御された時の音声（VOICE-ID）
  説明    SHOTモジュール shot が何かに衝突した時の音声を再生します。voice_id
          には、shot が相手の身体に衝突し相手がそれを防御したときの音声を指定
          します。特に理由がなければ voice_id には 'PCM_防御' を指定します。
          通常この関数は、SHOT関数の 'SHOT_CMD_対身体衝突' コマンドに応答する
          場所で実行します。
  関連    SHOT (t)
          SHOTのメンバ hit_info (t)
          HIT_INFO (t)
          SHOT_CMD_対身体衝突 (m)
          SHOT_CMD_減少 (m)
          SHOT_CMD_消滅 (m)


void  Shot演出_ヒットマーク( SHOT *shot, short x, short y,
                                                    short body, short def )

  引数    shot  SHOTモジュールハンドラ
          x  絶対Ｘ座標（-32768〜32767）
          y  絶対Ｙ座標（-32768〜32767）
          body  身体衝突モード（ON,OFF）
          def  防御マーク表示モード（ON,OFF）
  説明    SHOTモジュール shot が消滅するときのグラフィックを絶対座標(x,y)
          に表示します。消滅グラフィックは数サイクルにわたって表示されますが、
          この関数からはすぐにリターンします。通常この関数は、SHOT関数の
          'SHOT_CMD_対SHOT衝突' コマンドや 'SHOT_CMD_対身体衝突' コマンドに
          応答する場所で実行しますが、'SHOT_CMD_対身体衝突' に応答する場合のみ
          body に ON を指定します。また、shot に衝突したキャラが shot を防御し
          た時に消滅グラフィックの代わりに防御マークを表示させるならば def に
          ON を指定します。
  関連    SHOT_CMD_対SHOT衝突 (m)
          SHOT_CMD_対身体衝突 (m)
          SHOT_CMD_減少 (m)
          SHOT_CMD_消滅 (m)


..............................................................................
１８．音声に関する操作


１８−１．音声の再生


void  音声再生_標準( int p, short ch, short voice_id )

  引数    p  キャラクタ・ハンドラ
          ch  出力チャネル（0,1,2）
          voice_id  音声（VOICE-ID）
  説明    p の標準音声データ（VOICE.SMP）に登録されている音声 voice_id を
          チャネル ch に出力します。各チャネルの特性は次の通りです。
              0：システムや p の相手キャラと共有するチャネルです。このチャネル
                 で再生される音声は、処理負荷・演出効果などを考慮しシステムが
                 決定します。そのため、指定した音声が別の音声にかき消されるこ
                 ともあります。
              1：p が占有するチャネルです。このチャネルでは、確実に音声が再生
                 されることが保証されていますが、p が攻撃をくらった場合には
                 再生を途中で中止します。
              2：p が占有するチャネルです。このチャネルでは、確実に音声が再生
                 されることが保証されています。
          通常、チャネル 0 は風の音や着地音といった効果音に使用します。チャネ
          ル 1 は、攻撃の掛け声など確実に再生され反撃された時に再生停止するよ
          うな効果音に使用します。チャネル 2 は何の妨げもなく再生し続けるとい
          う特性から、特殊な場合を除き使用しません。
          ちなみに、システムは 'PCM_悲鳴' をチャネル 2 に出力しています。
  関連    音声再生_ユーザ (f)
          PCM_... (m)


void  音声再生_ユーザ( int p, short ch, char *data, int size )

  引数    p  キャラクタ・ハンドラ
          ch  出力チャネル（0,1,2）
          data  音声データ（ADPCM）へのポインタ
          size  音声データの長さ（バイト数）
  説明    p のヒープメモリ上に存在する音声データ（ADPCM）を、チャネル ch に
          出力します。各チャネルの特性は 音声再生_標準() と同様です。ただし、
          チャネル 0 に対しても確実に再生されることが保証されています。
  関連    音声再生_標準 (f)


int  音声取得_残り時間( int p, short ch )

  戻り値  残り時間（バイト数）
  引数    p  キャラクタ・ハンドラ
          ch  出力チャネル（0,1,2）
  説明    p がチャネル ch に出力した音声データがすべて再生されるまでの時間をバ
          イト数で取得します。再生が完了しているときは 0 を返します。
  関連    音声再生_標準 (f)
          音声再生_ユーザ (f)


void  音声停止( int p, short ch )

  引数    p  キャラクタ・ハンドラ
          ch  出力チャネル（0,1,2）
  説明    p がチャネル ch に出力した音声データの再生を停止させます。
  関連    音声再生_標準 (f)
          音声再生_ユーザ (f)


..............................................................................
１９．効果演出に関する操作


１９−１．身体残像の表示


void  演出表示_身体残像( int p )

  引数    p  キャラクタ・ハンドラ
  説明    現在のサイクルで p の身体の残像を表示します。残像の表示位置は、
          １０サイクル前に身体があった位置になります。
  関連    演出設定_身体残像位置 (f)
          演出取得_身体残像Ｘ (f)
          演出取得_身体残像Ｙ (f)


void  演出設定_身体残像位置( int p, short x, short y )

  引数    p  キャラクタ・ハンドラ
          x  絶対Ｘ座標（-32768〜32767）
          y  絶対Ｙ座標（-32768〜32767）
  説明    p の身体の残像表示位置を絶対座標 x,y に設定します。この関数は、残像
          の表示位置を身体の位置と関係なく指定したいときに使用します。
  関連    演出表示_身体残像 (f)
          演出取得_身体残像Ｘ (f)
          演出取得_身体残像Ｙ (f)


short  演出取得_身体残像Ｘ( int p, short num )

  戻り値  絶対Ｘ座標（-32768〜32767）
  引数    p  キャラクタ・ハンドラ
          num  サイクル数（1〜10）
  説明    現在から num サイクル前の p の身体の絶対Ｘ座標を取得します。
  関連    演出表示_身体残像 (f)
          演出設定_身体残像位置 (f)
          演出取得_身体残像Ｙ (f)


short  演出取得_身体残像Ｙ( int p, short num )

  戻り値  絶対Ｙ座標（-32768〜32767）
  引数    p  キャラクタ・ハンドラ
          num  サイクル数（1〜10）
  説明    現在から num サイクル前の p の身体の絶対Ｙ座標を取得します。
  関連    演出表示_身体残像 (f)
          演出設定_身体残像位置 (f)
          演出取得_身体残像Ｘ (f)


１９−２．文字の表示


void  演出表示_メッセージ( int p, char *str1, char *str2,
                                                short num, short pal_num )

  引数    p  キャラクタ・ハンドラ
          str1  １行目の文字列（15文字以内）
          str2  ２行目の文字列（15文字以内）
          num  表示サイクル数（0〜32767）
          pal_num  色番号（0〜5）
  説明    画面の p 側（1P:左, 2P:右）に２行のメッセージを表示します。メッセー
          ジは num で指定したサイクル数だけ表示し続けます。表示できる文字は
          大文字アルファベットと数字のみで、必ず半角でなくてはいけません。文字
          の色は pal_num で５色のうちから選べますが、割り当てられている色コー
          ドはシステムのバージョンによって異なります。表示タイミングによって
          は、システムのメッセージと衝突する可能性がありますので注意が必要で
          す。
  関連    演出表示_テキスト (f)


void  演出表示_テキスト( short x, short y, short pal_num, char *str )


  引数    x  ＢＧ絶対Ｘ座標（0〜31）
          y  ＢＧ絶対Ｙ座標（8〜28）
          pal  色番号（0〜5）
          pal_num  文字列（32文字以内）
  説明    画面のＢＧ座標 x,y から右方向にテキスト str を表示します。表示でき
          る文字は大文字アルファベットと数字のみで、必ず半角でなくてはいけま
          せん。文字の色は pal_num で５色のうちから選べますが、割り当てられて
          いる色コードはシステムのバージョンによって異なります。表示位置によっ
          ては、システムの表示物と衝突する可能性がありますので注意が必要です。
  関連    演出表示_メッセージ (f)


１９−３．各種イメージの表示


void  演出表示_砂煙( int p, short frc )

  引数    p  キャラクタ・ハンドラ
          frc  強制表示モード（ON,OFF）
  説明    p の足元のまわりに砂煙を表示させます。frc=OFF の場合、現在砂煙が表示
          されていない場合にのみ砂煙が表示されます。


void  演出表示_ヒットマーク( int p, short x, short y, short level )

  引数    p  キャラクタ・ハンドラ
          x  絶対Ｘ座標（-512〜511）
          y  絶対Ｙ座標（-512〜511）
          level  大きさ（LEVEL_小,LEVEL_大）
  説明    p に対するヒットマークを絶対座標 x,y に表示します。ヒットマークの
    　　　大きさは level で指定します。特に理由がない限り p には相手のキャラ
          ハンドラを指定して下さい。


１９−４．地面に関する操作


void  演出設定_地面振動( short c, short t, short a )

  引数    c  振動持続サイクル数（0〜32767）
          t  周期（1〜32766）
          a  振幅（0〜8）
  説明    地面を振動させます。c には振動を続けるサイクル数を指定します。t には
          縦揺れが起きる間隔のサイクル数（周期）を指定します。a には縦揺れの
          最大の変化量のドット数（振幅）を指定します。


１９−５．時間に関する操作


void  演出設定_遅延ループ( short mode, short num )

  引数    mode  同期モード（0,1）
          num  遅延カウント数（1〜32766）
  説明    num カウントだけシステムを停止させます。mode=0 の時の１カウントは
          １サイクルに対応し、mode=1 のときは１カウントがＣＲＴの垂直同期に
          対応します。この関数は、スローモーションといった演出に使用します。


..............................................................................
２０．一般データ処理に関する操作


２０−１．ファイルアクセス


int  ファイル読み込み( int p, char *filename, int size, char *buf )

  戻り値  -1（読み込み失敗）, 0以上（読み込み成功）
  引数    p  キャラクタ・ハンドラ
          filename  ファイル名
          size  読み込むデータのサイズ（0〜）
          buf  読み込み先バッファ
  説明    p のデータ・ディレクトリの中にあるファイル filename の内容を、その
          先頭から size バイトだけバッファ buf へ読み込みます。


int  Data取得_ファイルサイズ( int p, char *filename )

  戻り値  ファイルサイズ（0未満の場合はファイル不在）
  引数    p  キャラクタ・ハンドラ
          filename  ファイル名
  説明    p のデータ・ディレクトリの中にあるファイル filename のサイズを取得し
          ます。


２０−２．メモリ操作


void  ３２バイト転送( char *from, char *to )

  引数    from  転送元のポインタ
          to  転送先のポインタ
  説明    from に格納されている３２バイトのデータを to に転送します。


void  Dataコピー_メモリブロック( short blk_size, char *data0, char *data1,
                                                              short blk_num )

  引数    blk_size  メモリブロックのサイズ（1,2,4,8,16,32）
          data0  転送元のメモリブロック
          data1  転送先のメモリブロック
          blk_num メモリブロック数
  説明    メモリブロック data0 の内容を data1 へコピーします。コピーされるサイ
          ズは blk_size * blk_num ですが、blk_size が大きいほど処理が高速にな
          っています。


void  Dataクリア_メモリブロック( short blk_size, char *data, short blk_num )

  引数    blk_size  メモリブロックのサイズ（1,2,4,8,16,32）
          data  メモリブロック
          blk_num メモリブロック数
  説明    メモリブロック data の内容を０クリアします。クリアされるサイズは
          blk_size * blk_num ですが、blk_size が大きいほど処理が高速になってい
          ます。


char  *Data確保_メモリブロック( unsigned int size )

  戻り値  メモリブロックへのポインタ（0の場合は確保失敗）
  引数    size  メモリブロックのサイズ
  説明    size で指定したサイズのメモリブロックを動的に確保します。確保したメ
          モリブロックは確実に解放して下さい。また、main() ではこの関数を使用
          しないで下さい。
  関連    Data解放_メモリブロック (f)


void  Data解放_メモリブロック( char *mem )

  引数    mem  メモリブロックのポインタ
  説明    メモリブロック mem を解放します。
  関連    Data確保_メモリブロック (f)


..............................................................................
２１．コンフィグレーションに関する操作


２１−１．標準ＣＯＮＦＩＧハンドラの取得


CONFIG  *Cnf取得_キャラクタ標準( int p )

  戻り値  CONFIGハンドラ
  引数    p  キャラクタ・ハンドラ
  説明    キャラクタ・リソース「ＣＯＮＦＩＧ−ＬＳＴ」の内容を参照するためにシ
          ステムが標準で用意しているＣＯＮＦＩＧハンドラを取得します。
  関連    構造体 CONFIG (t)
          Cnf取得_文字列 (f)
          Cnf取得_整数 (f)
          Cnf取得_存在 (f)


２１−２．ユーザＣＯＮＦＩＧハンドラの登録


short  Cnf登録_キャラクタ( int p, CONFIG *config, char *filename )

  戻り値  OFF（ロード失敗）, ON（ロード成功）
  引数    p  キャラクタ・ハンドラ
          config  ユーザの用意したＣＯＮＦＩＧハンドラ
          filename  ファイル名
  説明    p のデータ・ディレクトリの中にあるコンフィグレーション・ファイル
          filename の内容を参照するためのＣＯＮＦＩＧハンドラ config をシステ
          ムに登録します。この関数を実行するとファイルのロードが実行されるため
          少し時間を要します。このため、この関数は main() で一度だけ実行しま
          す。
  関連    構造体 CONFIG (t)
          Cnf登録_ステージ (f)
          Cnf登録_システム (f)
          Cnf取得_文字列 (f)
          Cnf取得_整数 (f)
          Cnf取得_存在 (f)


short  Cnf登録_ステージ( int p, CONFIG *config, char *filename )

  戻り値  OFF（ロード失敗）, ON（ロード成功）
  引数    p  キャラクタ・ハンドラ
          config  ユーザの用意したＣＯＮＦＩＧハンドラ
          filename  ファイル名
  説明    現在選ばれているステージのデータ・ディレクトリの中にあるコンフィグレ
          ーション・ファイル filename の内容を参照するためのＣＯＮＦＩＧハンド
          ラ config をシステムに登録します。この関数を実行するとファイルのロー
          ドが実行されるため少し時間を要します。このため、この関数は main() で
          一度だけ実行します。
  関連    構造体 CONFIG (t)
          Cnf登録_キャラクタ (f)
          Cnf登録_システム (f)
          Cnf取得_文字列 (f)
          Cnf取得_整数 (f)
          Cnf取得_存在 (f)


short  Cnf登録_システム( int p, CONFIG *config, char *filename )

  戻り値  OFF（ロード失敗）, ON（ロード成功）
  引数    p  キャラクタ・ハンドラ
          config  ユーザの用意したＣＯＮＦＩＧハンドラ
          filename  ファイル名
  説明    システムのルート・ディレクトリの中にあるコンフィグレーション・ファイ
          ル filename の内容を参照するためのＣＯＮＦＩＧハンドラ config をシス
          テムに登録します。この関数を実行するとファイルのロードが実行されるた
          め少し時間を要します。このため、この関数は main() で一度だけ実行しま
          す。
  関連    構造体 CONFIG (t)
          Cnf登録_キャラクタ (f)
          Cnf登録_ステージ (f)
          Cnf取得_文字列 (f)
          Cnf取得_整数 (f)
          Cnf取得_存在 (f)


２１−３．コンフィグレーション情報の取得


char  *Cnf取得_文字列( CONFIG *config, char *tag, short index )

  戻り値  設定値（文字列）
  引数    config  ＣＯＮＦＩＧハンドラ
          tag  タグ（文字列）
          index  インデックス（0〜32767）
  説明    ＣＯＮＦＩＧハンドラ config で参照可能なコンフィグレーション情報を文
          字列で取得します。タグとそれに対応する設定値のインデックスを指定して
          設定値を取得します。該当する設定値が存在しない場合は空文字列 "" への
          ポインタを返します。
  関連    構造体 CONFIG (t)
          Cnf取得_整数 (f)
          Cnf取得_存在 (f)


int  Cnf取得_整数( CONFIG *config, char *tag, short index )

  戻り値  設定値（-32768〜32767）
  引数    config  ＣＯＮＦＩＧハンドラ
          tag  タグ（文字列）
          index  インデックス（0〜32767）
  説明    ＣＯＮＦＩＧハンドラ config で参照可能なコンフィグレーション情報を整
          数で取得します。タグとそれに対応する設定値のインデックスを指定して設
          定値を取得します。該当する設定値が存在しない場合は -1 を返します。
  関連    構造体 CONFIG (t)
          Cnf取得_文字列 (f)
          Cnf取得_存在 (f)


short  Cnf取得_存在( CONFIG *config, char *tag, short index )

  戻り値  OFF（存在しない）, ON（存在する）
  引数    config  ＣＯＮＦＩＧハンドラ
          tag  タグ（文字列）
          index  インデックス（0〜32767）
  説明    ＣＯＮＦＩＧハンドラ config で参照可能なコンフィグレーション情報の存
          在を調査します。タグとそれに対応する設定値のインデックスで調査する設
          定値を指定します。
  関連    構造体 CONFIG (t)
          Cnf取得_文字列 (f)
          Cnf取得_存在 (f)


short  Cnf取得_システム( int p, short key, short index )

  戻り値  設定値（key によって内容の意味が異なります）
  引数    p  キャラクタ・ハンドラ
          key  キー（SYS_CNF_...）
          index  インデックス（0〜32767）
  説明    システムの標準コンフィグレーションの設定値を取得します。p はキャラク
          タ別のコンフィグレーションを取得する場合に区別されます。key に応じて
          戻り値の内容は以下のように異なります。
             ［キー］           ［戻り値］
            ・SYS_CNF_LEVEL    ：ＣＰＵの難易度（0:容易,1:普通,2:難関）
            ・SYS_CNF_SCREEN   ：ＣＲＴ水平周波数（0:15KHz,1:31KHz）
            ・SYS_CNF_SPEED    ：動作速度（0:普通,1:微高速,2:高速,
                                                      3:超高速,4:最高速）
            ・SYS_CNF_SUPER    ：超技の回数制限（0:有り,1:無し）
            ・SYS_CNF_SHOOT    ：飛び道具の回数制限（0:有り,1:無し）
            ・SYS_CNF_FAINTING ：気絶（0:有り,1:無し）
            ・SYS_CNF_LOOP     ：ステージの繰り返し（0:しない,1:する）
            ・SYS_CNF_TRANSFORM：変身（0:有り,1:無し）
            ・SYS_CNF_DAMAGE   ：p のダメージ度（0:普通,1:半分,2:２倍,3:無し）
            ・SYS_CNF_LIMIT    ：時間の制限（0:有り,1:無し）
            ・SYS_CNF_PASS     ：風景の変化（0:有り,1:無し）
            ・SYS_CNF_DRUM     ：内蔵ドラム音（0:有り,1:無し）
            ・SYS_CNF_MIDI     ：ＭＩＤＩへの出力（0:有り,1:無し）
            ・SYS_CNF_DEMO     ：タイトル画面でデモを自動選択
                                 （0:しない,1:する）
          index には 0 を指定して下さい。
  関連    SYS_CNF_... (m)


short  Cnf設定_システム( int p, short key, short index, short val )

  戻り値  OFF（該当するキーが存在しない）, ON（成功）
  引数    p  キャラクタ・ハンドラ
          key  キー（SYS_CNF_...）
          index  インデックス（0〜32767）
  説明    システムの標準コンフィグレーションの設定値を設定します。p はキャラク
          タ別のコンフィグレーションを取得する場合に区別されます。


..............................................................................
２２．ＢＧＭに関する操作


２２−１．制御


void  Bgm制御_停止()

  説明    ＢＧＭの再生を停止します。
  関連    Bgm制御_再生 (f)
          Bgm制御_再生２ (f)


void  Bgm制御_再生( char *data )

  引数    data  ＺＭＤデータ
  説明    音源を初期化し、ＢＧＭを再生します。
  関連    Bgm制御_再生２ (f)


void  Bgm制御_再生２( char *data )

  引数    data  ＺＭＤデータ
  説明    音源を初期化せず、ＢＧＭを再生します。
  関連    Bgm制御_再生 (f)


void  Bgm制御_フェードアウト()

  説明    ＢＧＭの再生をフェードアウトさせながら停止します。
  関連    Bgm制御_再生 (f)
          Bgm制御_再生２ (f)


int  Bgm取得_状態()

  戻り値  OFF（停止）, ON（再生）
  説明    ＢＧＭの再生状態を取得します。


２２−２．データ展開


char  *Bgm確保_ＺＭＤメモリ( int p, char *fn_int, char *fn_ext )

  戻り値  確保したメモリのポインタ（0の場合は確保失敗）
  引数    p  キャラクタ・ハンドラ
          fn_int  ファイル名（内蔵音源用）
          fn_ext  ファイル名（ＭＩＤＩ音源用）
  説明    指定されたＺＭＤファイルを読み込むためのメモリを動的に確保します。シ
          ステム・コンフィグレーションのＭＩＤＩ音源の設定に応じて fn_int ,
          fn_ext のどちらが対象となるかが決められます。


short  Bgm展開_ＺＭＤファイル( int p, char *data,
                                        char *fn_int, char *fn_ext )

  戻り値  OFF（成功）, ON（失敗）
  引数    p  キャラクタ・ハンドラ
          data  ＺＭＤ読み込み用メモリ
          fn_int  ファイル名（内蔵音源用）
          fn_ext  ファイル名（ＭＩＤＩ音源用）
  説明    指定されたＺＭＤファイルを data へ読み込みます。システム・コンフィグ
          レーションのＭＩＤＩ音源の設定に応じて fn_int , fn_ext のどちらが読
          み込まれるかが決められます。


short  Bgm展開_ＺＰＤファイル( int p, char *filename )

  戻り値  OFF（成功）, ON（失敗）
  引数    p  キャラクタ・ハンドラ
          filename  ＺＤＰファイル名
  説明    指定されたＺＰＤファイル filename がシステム内のバッファへ読み込まれ、
          カレントのドラムセットとなります。標準のドラムセットを読み込む場合は
          filename に "" （空）を指定します。


..............................................................................
２３．スクリーンに関する操作


２３−１．状態設定


void  Scr設定_画面モード( short mode )

  引数    mode  画面モード（SCR_MODE_...の組み合わせ）
  説明    スクリーンの画面モードを変更します。mode に SCR_NO_CLEAR を組み合わ
          せると画面のクリアを行いません。
  関連    Scr設定_ＢＧ表示 (f)


void  Scr設定_表示位置( short page, short x, short y )

  引数    page  画面ページ（SCR_PAGE_...の組み合わせ）
          x  Ｘ座標
          y  Ｙ座標
  説明    グラフィック画面のページ page の表示位置を x, y に設定します。


void  Scr設定_表示面( short page )

  引数    page  画面ページ（SCR_PAGE_...の組み合わせ）
  説明    グラフィック画面の表示ページを page に設定します。page が
          SCR_PAGE_OFF の場合はグラフィック画面を表示しません。


void  Scr設定_余白( short l, short r, short t, short b )

  引数    l  左端のＢＧ数（0〜31）
          r  右端のＢＧ数（0〜31）
          t  上段のＢＧ数（0〜31）
          b  下段のＢＧ数（0〜31）
  説明    スクリーンのマスク領域を指定します。スクリーンの端からＢＧ座標系で
          l, r, t, b の領域はマスクされます。
  関連    Scr設定_ＢＧマスク (f)


void  Scr設定_ＢＧマスク( short mode, short iv )

  引数    mode  モード（ON：マスクをかける、OFF：マスクを解除する）
          iv  マスク処理速度（0〜32767）
  説明    マスクの処理を行います。iv で指定したサイクルだけ処理にウェイトがか
          かります。
  関連    Scr設定_余白 (f)


void  Scr設定_ＢＧ表示( short mode )

  引数    mode  表示モード（ON：表示する、OFF：表示しない）
  説明    ＢＧ画面の表示状態を設定します。
  技術    スクリーンの画面サイズを変更するとＢＧ画面のマッピングが変更されるた
          め画面の表示が乱れます。それを見せないようにシステムはＢＧ画面の表示
          モードを OFF に設定します。その後ユーザがＢＧ画面の表示モードを ON 
          にするためにこの関数を使用します。
  関連    Scr設定_画面モード (f)


void  Scr設定_ＧＲＰパレット( short page, char *data )

  引数    page  画面ページ（SCR_PAGE_0, SCR_PAGE_1）
          data  パレットデータ（128色分）
  説明    ＧＲＰ形式のデータが描画されているグラフィック画面 page に対してパレ
          ットデータ data を割り当てます。画面上のパレット表示が変化するのは次
          のサイクルからです。一時メモリを data に指定することは避けて下さい。
  関連    Scr描画_ＧＲＰデータ (f)
          Scr描画_ＧＲＰファイル (f)


２３−２．状態取得


SCR_INFO  *Scr取得_スクリーン情報()

  戻り値  スクリーン情報へのポインタ
  説明    システムのスクリーン情報へのポインタを取得します。


２３−３．描画


char *Scr描画_ＧＲＰデータ( short page, short x, short y,
                                          char *data, short line )

  戻り値  ＧＲＰデータの描画が済んだ位置のポインタ
  引数    page  画面ページ（SCR_PAGE_0, SCR_PAGE_1）
          x  描画開始Ｘ座標
          y  描画開始Ｙ座標
          data  ＧＲＰデータ
          line  描画するライン数
  説明    ＧＲＰ形式のデータ data をグラフィック画面 page の x,y に描画しま
          す。描画したライン数が line に達すると描画を中断します。この関数の戻
          り値を data に指定すると描画中断ライン以降から描画を再開できます。
  関連    Scr設定_ＧＲＰパレット (f)


short  Scr描画_ＧＲＰファイル( int p, short page, short x, short y,
                                                    char *filename )

  戻り値  OFF（成功）, ON（失敗）
  引数    p  キャラクタ・ハンドラ
          page  画面ページ（SCR_PAGE_0, SCR_PAGE_1）
          x  描画開始Ｘ座標
          y  描画開始Ｙ座標
          filename  ＧＲＰファイル名
  説明    p のデータ・ディレクトリの中のＧＲＰファイル filename をグラフィック
          画面 page の x,y に描画します。
  関連    Scr設定_ＧＲＰパレット (f)


short  Scr描画_ＰＩＣファイル( int p, short page, short x, short y,
                                                    char *filename )

  戻り値  OFF（成功）, ON（失敗）
  引数    p  キャラクタ・ハンドラ
          page  画面ページ（SCR_PAGE_0）
          x  描画開始Ｘ座標
          y  描画開始Ｙ座標
          filename  ＰＩＣファイル名
  説明    p のデータ・ディレクトリの中のＰＩＣファイル filename をグラフィック
          画面 page の x,y に描画します。


void  Scr描画_矩形クリア( short page, short x, short y, short w, short h )

  引数    page  画面ページ（SCR_PAGE_....）
          x  開始Ｘ座標
          y  開始Ｙ座標
          w  幅
          h  高さ
  説明    グラフィック画面のページ page の x,y,w,h で指定された領域をカラー
          コード０でクリアします。
  関連    Scr描画_矩形クリア２ (f)


void  Scr描画_矩形クリア２( short page, short x, short y )

  引数    page  画面ページ（SCR_PAGE_....）
          x  開始Ｘ座標
          y  開始Ｙ座標
  説明    グラフィック画面のページ page の (x,y)-(x+255,y+255) で指定された領
          域をカラーコード０でクリアします。
  関連    Scr描画_矩形クリア (f)


void  Scr描画_文字列( short x, short y, char *str, char mx, char my,
                                          char size, short pal, char an )

  引数    x  描画開始Ｘ座標
          y  描画開始Ｙ座標
          str  文字列
          mx  横倍率（1〜127）
          my  縦倍率（1〜127）
          size  フォントサイズ（FONT_SIZE_...）
          pal  カラーコード（0〜32767）
          an  角度（0,1,2,3）
  説明    文字列 str をグラフィック画面の x,y に対して色 pal で描画します。文
          字フォントのサイズは size で指定し、mx, my で拡大表示できます。


void  Scr描画_ヘルプ文字列( short x, short y, char *str )

  引数    x  描画開始Ｘ座標
          y  描画開始Ｙ座標
          str  文字列
  説明    リソース「ＨＥＬＰ−ＴＸＴ」の規定で記述された文字列 str をグラフィ
          ック画面の x,y に対して描画します。


..............................................................................
２４．レジストリに関する操作


２４−１．データ取得


short  Reg取得_登録状態( short num_story, short num_data )

  戻り値  OFF（登録されていない）, ON（登録されている）
  引数    num_story  ストーリー番号（1〜20）
          num_data  データ番号（1〜10）
  説明    レジストリの追加データ登録テーブルのアドレス num_story, num_data の
          登録状態を取得する。


char  *Reg取得_ストーリー名( short num )

  戻り値  ストーリー名
  引数    num  ストーリー番号（1〜20）
  説明    レジストリのストーリー登録テーブルのアドレス num に登録されいるス
          トーリー名を取得する。


STAGE  *Reg取得_ステージ情報( short num_story, short num_data )

  戻り値  ステージ情報へのポインタ
  引数    num_story  ストーリー番号（1〜20）
          num_data  データ番号（1〜10）
  説明    レジストリの追加データ登録テーブルのアドレス num_story, num_data の
          ステージ情報を取得する。


short  Reg取得_PATH_キャラクタ( short num_story, short num_data, char *buf )

  戻り値  OFF（登録されていない）, ON（登録されている）
  引数    num_story  ストーリー番号（1〜20）
          num_data  データ番号（1〜10）
  説明    レジストリの追加データ登録テーブルのアドレス num_story, num_data の
          キャラクタのディレクトリ・パスを buf にコピーする。
  関連    Reg取得_PATH_ステージ (f)


short  Reg取得_PATH_ステージ( short num_story, short num_data, char *buf )

  引数    num_story  ストーリー番号（1〜20）
          num_data  データ番号（1〜10）
  説明    レジストリの追加データ登録テーブルのアドレス num_story, num_data の
          ステージのディレクトリ・パスを buf にコピーする。
  関連    Reg取得_PATH_キャラクタ (f)


２４−２．データ設定


void  Reg設定_追加データ数( short num )

  引数    num  追加データ数（1〜10）
  説明    レジストリの追加データ登録テーブルの１ストーリー当たりの追加データ数
          を設定します。この関数はＳＥＬＥＣＴサブ・コントローラの main() での
          み使用します。
  関連    Reg設定_ストーリー数 (f)


void  Reg設定_ストーリー数( short num )

  引数    num  ストーリー数（1〜20）
  説明    レジストリのストーリー登録テーブルの最大ストーリー数を設定します。こ
          の関数はＳＥＬＥＣＴサブ・コントローラの main() でのみ使用します。
  関連    Reg設定_追加データ数 (f)


..............................................................................
２５．セレクタに関する操作


２５−１．データ取得


short  Sel取得_動作モード()

  戻り値  セレクタ動作モード（SEL_MODE_...の組み合わせ）
  説明    セレクタ動作モードを取得します。


char  *Sel取得_アイコン( short num_story, short num_char )

  戻り値  アイコンデータへのポインタ
  引数    num_story  ストーリー番号（1〜20）
          num_data  キャラクタ番号（1〜10）
  説明    キャラクタ num_story, num_char のリソース「SELECT.PIC」のイメージが
          展開されている領域を取得します。


short  Sel取得_キャラクタ番号( int p )

  戻り値  キャラクタ番号（1〜10）
  引数    p  キャラクタ・ハンドラ
  説明    キャラクタ p のキャラクタ番号を取得します。


short  Sel取得_ストーリー番号( int p )

  戻り値  ストーリー番号（1〜20）
  引数    p  キャラクタ・ハンドラ
  説明    キャラクタ p のストーリー番号を取得します。


short  Sel取得_ステージ番号()

  戻り値  ステージ番号（1〜10）
  説明    現在のストーリーにおけるステージ番号を取得します。


short  Sel取得_全体ストーリー番号()

  戻り値  ストーリー番号（1〜20）
  説明    ストーリーモードにおける現在のストーリー番号を取得します。


２５−２．データ設定


void  Sel設定_キャラクタ番号( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  キャラクタ番号（1〜10）
  説明    キャラクタ p のキャラクタ番号を num に設定します。


void  Sel設定_ストーリー番号( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  ストーリー番号（1〜20）
  説明    キャラクタ p のストーリー番号を num に設定します。


void  Sel設定_同キャラ識別番号( int p, short num )

  引数    p  キャラクタ・ハンドラ
          num  同キャラ識別番号（1,2）
  説明    キャラクタ p の同キャラ識別番号を num に設定します。


void  Sel設定_ステージ番号( short num )

  引数    num  ステージ番号（1〜10）
  説明    現在のストーリーにおけるステージ番号を num に設定します。


void  Sel設定_全体ストーリー番号( short num )

  引数    num  ストーリー番号（1〜20）
  説明    ストーリーモードにおける現在のストーリー番号を num に設定します。


２５−３．その他


void  Sel表示_ＢＧネーム( int p, short x, short y,
                                   short num_story, short num_char )

  引数    p  キャラクタ・ハンドラ
          x  描画開始Ｘ座標（ＢＧ座標系）
          y  描画開始Ｙ座標（ＢＧ座標系）
          num_story  ストーリー番号（1〜20）
          num_char  キャラクタ番号（1〜10）
  説明    キャラクタ num_story, num_char のリソース「NAME.SP」をＢＧ画面の x,y
          に表示します。表示にはキャラクタ p のリソース展開バッファが使用され
          ます。


void  Sel更新_PATH_キャラクタ( int p, short num_story, short num_char )

  引数    p  キャラクタ・ハンドラ
          num_story  ストーリー番号（1〜20）
          num_char  キャラクタ番号（1〜10）
  説明    キャラクタ p のディレクトリ・パスを num_story, num_char で指定された
          キャラクタのパスに更新します。通常この処理はシステムが適切なタイミン
          グで実行しますので、この関数は使用しないで下さい。


..............................................................................
２６．ステージに関する操作


２６−１．データ取得


STAGE  *Stg取得_ハンドラ() ;

  戻り値  ステージ・ハンドラ
  説明    ステージ・ハンドラを取得します。


..............................................................................
２７．Ｃ標準関数


２７−１．STDIO


char  *Sfxvi_fopen( int p, char *filename, char *mode )

  戻り値  ファイル・ハンドラ（FILE* 型）
  引数    p  キャラクタ・ハンドラ
          filename  ファイル名
          mode  モード
  説明    Ｃ言語の標準ライブラリの fopen 相当の関数です。引数の内容も同じで
          す。ただしファイルはキャラクタ p のディレクトリの下のファイルが対象
          となります。戻り値は char* 型ですが FILE* 型と同じデータへのポインタ
          となっています。


int  Sfxvi_fclose( char *fp )

  戻り値  エラーコード
  引数    fp  ファイル・ハンドラ
  説明    Ｃ言語の標準ライブラリの fclose 相当の関数です。引数の内容も同じで
          す。


char  *Sfxvi_fgets( char *buf, int size, char *fp )

  戻り値  バッファ
  引数    buf  バッファ
          size  サイズ
          fp  ファイル・ハンドラ
  説明    Ｃ言語の標準ライブラリの fgets 相当の関数です。引数の内容も同じで
          す。


２７−２．STDLIB


int  Sfxvi_atoi( char *str )

  戻り値  整数
  引数    str  文字列
  説明    Ｃ言語の標準ライブラリの atoi 相当の関数です。引数の内容も同じで
          す。


２７−３．STRING


char  *Sfxvi_strcpy( char *str1, char *str2 )

  戻り値  コピー先
  引数    str1  コピー先
          str2  文字列
  説明    Ｃ言語の標準ライブラリの strcpy 相当の関数です。引数の内容も同じで
          す。


char  *Sfxvi_strcat( char *str1, char *str2 )

  戻り値  連結先
  引数    str1  連結先
          str2  文字列
  説明    Ｃ言語の標準ライブラリの strcat 相当の関数です。引数の内容も同じで
          す。


unsigned int  Sfxvi_strlen( char *str )

  戻り値  長さ
  引数    str  文字列
  説明    Ｃ言語の標準ライブラリの strlen 相当の関数です。引数の内容も同じで
          す。


..............................................................................
２８．システムに関する操作


２８−１．データ取得


char  *Sys取得_PATH_キャラクタ()

  戻り値  パス
  説明    キャラクタ・データの格納パスを取得します。


char  *Sys取得_PATH_ステージ()

  戻り値  パス
  説明    ステージ・データの格納パスを取得します。


char  *Sys取得_PATH_ログ()

  戻り値  パス
  説明    ログ・データの格納パスを取得します。


short  Sys取得_バージョン()

  戻り値  バージョン番号
  説明    カ−ネルのバージョン番号を取得します。リリース時バージョン番号の100
          倍が返ります。例えば戻り値が 400 ならばバージョン 4.00 であることを
          表しています。


２８−２．特殊処理


void  システム異常終了( char *mess, char *code )

  引数    mess  メッセージ文字列
          code  エラーコード文字列
  説明    システムを異常終了させます。その際、画面に文字列 mess, code を表示し
          ます。


..............................................................................
２９．その他の操作


２９−１．場面の取得


short  場面取得_デモ()

  戻り値  OFF（デモ画面でない）, ON（デモ画面）
  説明    現在の場面状態を取得します。デモ画面なのかどうかを知ることができま
          す。
  関連    場面取得_エンディング (f)


short  場面取得_エンディング()

  戻り値  OFF（エンディング画面でない）, ON（エンディング画面）
  説明    現在の場面状態を取得します。エンディング画面なのかどうかを知ることが
          できます。
  関連    場面取得_デモ (f)


２９−２．各種データの取得


short  乱数発生()

  戻り値  乱数（0〜32767）
  説明    0〜32767 のランダムな整数値を取得します。
  関連    Cpu取得_レベル別確率 (f)


int  自分ハンドラ()

  戻り値  キャラクタ・ハンドラ
  説明    自分のキャラクタ・ハンドラを取得します。通常の動作関数では引数として自分と
          相手のハンドラが与えられますが、この関数は、自分のハンドラが与えられ
          ない場所で役に立ちます。
  関連    相手ハンドラ (f)


int  相手ハンドラ( int p )

  戻り値  キャラクタ・ハンドラ
  説明    相手のキャラクタ・ハンドラを取得します。ただし、このハンドラが保証されて
          いるのは対戦画面でのみです。通常の動作関数では引数として自分と相手
          のハンドラが与えられますが、この関数は、相手のハンドラが与えられない
          場所で役に立ちます。
  関連    自分ハンドラ (f)


int  キャラハンドラ( short num, short type )

  戻り値  キャラクタ・ハンドラ
  引数    num  プレイヤー番号（1,2）
          type  タイプ（0）
  説明    キャラクタ・ハンドラを取得します。
  関連    自分ハンドラ (f)
          相手ハンドラ (f)


short  プレイヤー番号( int p )

  戻り値  1（1P側）, 2（2P側）
  引数    p  キャラクタ・ハンドラ
  説明    p のプレイヤー番号を取得します。p が１プレイヤー側（左側）なのか
         ２プレイヤー側（右側）なのかを知ることができます。


short  セレクト番号( int p )

  戻り値  キャラ登録番号（1〜200）
  引数    p  キャラクタ・ハンドラ
  説明    p のキャラ登録番号を取得します。p はキャラ選択画面上で何番目なのかを
          知ることができます。


char  *キャラの名前( int p )

  戻り値  名前（文字列）へのポインタ
  引数    p  キャラクタ・ハンドラ
  説明    p の名前を取得します。キャラの名前とは、キャラ・データを格納している
          ディレクトリ名がそれにあたります。


short  同キャラ識別番号( int p )

  戻り値  1（第１カラー）, 2（第２カラー）
  引数    p  キャラクタ・ハンドラ
  説明    p の同キャラ識別番号を取得します。p の身体が第１カラー（Ａボタン
          選択）なのか第２カラー（Ｂボタン選択）なのかを知ることができます。


short  ステージ番号()

  戻り値  ステージ登録番号（1〜200）
  説明    現在のステージのステージ登録番号を取得します。現在のステージがステー
          ジ選択画面上で何番目なのかを知ることができます。


short  ラウンド番号()

  戻り値  ラウンド番号（1〜9）
  説明    現在のラウンド番号を取得します。現在、何ラウンド目なのかを知ることが
          できます。


short  残り時間()

  戻り値  残り時間（0〜99）
  説明    現在のラウンドの残り時間を取得します。


..............................................................................

/*==========================================================================*/
