Sint32 ufPlayTime( mode, est, carry, param )
Uint8 mode
Uint8 est
Uint8 carry
Uint8 param[32]
mode 動作モード est プレイ評価 carry 攻略率 param[32] フリーエリアへ書き込むデータ
残り追記可能パケット数
プレイ時間を保存します。前回呼び出し時から今回の呼び出し時までの時間の差分をとり、その値から各時間帯のプレイ時間を算出し保存します。 また、この関数は引数に与えられたプレイ評価、 攻略率、フリーエリアの内容を保存します。
引数 est(プレイ評価)の値は、以下の通りとしてください。
値 意味 0 最低のプレイ 1〜127 標準より劣るプレイ 128 標準的なプレイ 129〜253 標準より優れるプレイ 254 最高のプレイ 255 未設定
ここへ記録を残さない場合は、必ず255を指定してください。
引数 carry(攻略率)の値は、以下の通りとしてください。
値 意味 0 全体の0%を攻略 128 全体の50%を攻略 254 全体の100%を攻略 255 未設定
ここへ記録を残さない場合は、必ず255を指定してください。
これらは引数 modeの値によって挙動が変わります。
値 意味 UFD_SAVE セーブカウントを増やす UFD_LOAD ロードカウントを増やす UFD_PLAY カウントは変更しない
この関数の返り値はあと何パケット追記が可能かを表しています。 この値が2を切ったら、次のufSynchが呼び出されるとリフレッシュが発生するので、 リフレッシュして欲しくないときはufAutoSynch()関数の引数に0を指定して、ufSynchが起きないようにしてください。 そして、リフレッシュが起きても問題がない場面でufSynch()関数を実行し、リフレッシュを行います。 一度リフレッシュをすると、追記パケット数は増えます。
/* Free data area */ static Uint8 data[32]; /* Play time update */ /* Save, load count is not changed */ /* Play evaluation...standard, Carry...50% */ ufPlayTime(UFD_PLAY, 128, 128, data);
また、この関数の返り値が0(=FALSE)のときは、ufSynch関数が書き込みに失敗した可能性もあります。 詳細は、ufgErrnoに原因の番号が書かれているので、その値から判断してください。
ufAutoSynch() プレイ履歴更新間隔の指定