GetModuleItemLostBy()

OnUnAcquieredItemイベントで指定されたアイテムを失ったクリーチャーを調べます。

object GetModuleItemLostBy();

Description

OnUnAquieredItemイベントを引き起こすアイテムを落としたオブジェクトを返します。

エラーのときはOBJECT_INVALIDを返します。これはアイテムを落とすことによって引き起こされるので通常はエラーは起こりませんが、あなたが手動でイベントを起こす場合はこのエラーに注意してください。



Remarks

OnUnacquireItemイベントはDestroyObject関数で破壊したオブジェクトでも発動することはご存知ですよね?

この場合関数で返されるオブジェクトはOBJECT_INVALIDとはなりません。しかしそれはどんな使用法も正確に機能しませんし、既存のオブジェクトではありません。

OBJECT_INVALIDをチェックするなら代わりに、ユーザーは常にGetIsObjectValid関数(OBJECT_INVALIDならFALSEを返す)を使用するべきです。


Version

1.28

Example

// アイテムを落としたクリーチャーの名前を調べます。
void main()
{
    object a = GetModuleItemLost();
    if(a == OBJECT_INVALID)
        SendMessageToPC(GetFirstPC(),"OOPS A CRASH ME THINKS");
    else {
        SendMessageToPC(GetFirstPC(),GetTag(a));
        a = GetModuleItemLostBy();
        if(a == OBJECT_INVALID)
            SendMessageToPC(GetFirstPC(),"OOPS A CRASH ME THINKS");
        else
            SendMessageToPC(GetFirstPC(),"And was dropped by " + GetTag(a));
        }
}

See Also

functions: GetModuleItemAcquired | GetModuleItemAcquiredFrom | GetModuleItemLost
categories: Inventory Functions | Module Functions
events: OnAcquireItem Event | OnUnAcquireItem Event


author: GoLeM, editor: Charles Feduke, additional contributor(s): Charles Mead, Timothy Dang, Matthew Green, David Kondrad, JP team: NamaYake
Send comments on this topic.