void Start() { if (!instance) { instance = this; } }
public BaseRecycler(CreateHandler createHandler, CheckValidHandler checkValidHandler, ResetHandler resetHandler, DestroyHandler destroyHandler) { items = new QueuedList <T>(); OnCreateHandler = createHandler; OnCheckValidHandler = checkValidHandler; OnResetHandler = resetHandler; OnDestroyHandler = destroyHandler; }
public void DestroyItemInInventory(ItemInstance item) { if (items.Contains(item)) { RemoveItem(item); DestroyHandler DestroyHandler = item.GetComponent <DestroyHandler>(); if (DestroyHandler != null) { DestroyHandler.DestroySelf(); } else { GameObject.Destroy(item.gameObject); } } }
public void SetParam(DestroyHandler callback, string combieParam) { CallBack_ = callback; combieParam_ = combieParam; }
public void RegisterDestroyHandler(DestroyHandler handler) { PostDestroy += handler; }
private void OnDestroy() { DestroyHandler?.Invoke(); }
protected virtual void OnDestroy() { DestroyHandler?.Invoke(); }