public static void Pool(MovementGroup group) { int indexID = group.indexID; activeGroups.RemoveAt(indexID); pooledGroups.Add(group); }
public static MovementGroup CreateGroup(Command com) { MovementGroup moveGroup = pooledGroups.Count > 0 ? pooledGroups.Pop() : new MovementGroup(); moveGroup.indexID = activeGroups.Add(moveGroup); LastCreatedGroup = moveGroup; moveGroup.Initialize(com); return(moveGroup); }
protected override void OnLateSimulate() { for (int i = 0; i < activeGroups.PeakCount; i++) { if (activeGroups.arrayAllocation[i]) { MovementGroup moveGroup = activeGroups[i]; moveGroup.LateSimulate(); } } }