public override void ElementDestructor(IDataPool_Element element) { GameObjectPool_Element o = element as GameObjectPool_Element; GameObject.Destroy(o.gameObject); base.ElementDestructor(element); }
public bool ReturnElement(IDataPool_Element element) { DataPool_ElementData data = element.DataPool_Element_GetData(); if (element == null) { Debug.LogError("Can't return object. Reason: object is null"); return(false); } else if (data.fOwner != this) { Debug.LogError(string.Concat("Can't return object '", element, "' to this pool ('", this, "'). Reason: The pool has no ownership this object. ")); return(false); } fPoolUsedCount--; fObjectPool[data.fPoolIndex] = fObjectPool[fPoolUsedCount]; fObjectPool[data.fPoolIndex].DataPool_Element_SetData(data); fObjectPool[fPoolUsedCount] = element; data.fPoolIndex = -1; element.DataPool_Element_SetData(data); return(true); }
public override void ElementDestructor(IDataPool_Element element) { SnakeNode node = element as SnakeNode; node.Finalizer(); }
public virtual void ElementDestructor(IDataPool_Element element) { }