public ProgressObject GetProgressObject() { ProgressObject obj = null; if (this.poolProgress.Count > 0) { obj = poolProgress.Dequeue(); } else { obj = GenerateBar(this.bgObject); } this.activeProgress.Add(obj); int count = activeProgress.Count; obj.Enable(); obj.SetPosition(GetPosition(count - 1)); this.ExpandBgObject(count); return(obj); }