概要
指定アイテムをキャラクターが使ったかどうか調べます。
プロトタイプ
void *DetectItemUse(int item);
戻り値
指定したアイテムを使用したキャラクターがいれば、そのキャラクターのポインタが返ります。それ以外の場合は NULL が返ります。
パラメータ
item
使用したかどうか調べるアイテムのインデックス
解説
DetectItemUse 関数は、アクションログを調べて、いずれかのキャラクターが item で指定されたアイテムを使用したかどうか調べます。指定されたアイテムを使用したキャラクターがいれば、アクションログからそのデータを削除して、アイテムを使用したキャラクターのポインタを返します。NormalProcess 関数が実行されると、それまでのアクションログがクリアされ、同時に新たにアイテムが使用される可能性があります。また、OpenItemBox 関数の実行中にもアイテムが使用される可能性があります。OpenItemBox 関数が実行された後で DetectItemUse 関数が実行されずに NormalProcess 関数が実行されると、そのアイテムが使用されたことはわからなくなってしまうので注意してください。なお、用途「なし」のアイテムはスクリプトから持ち物を削除しなければなくならないので注意してください。