Используйте реализацию стека fifo. Если вы хотите удалить спрайт, вы сначала проверяете, находится ли он в нижней части стека, а когда вы его удаляете, вы извлекаете его и из стека. Практически у вас будет NSMutableArray и вы увидите первый элемент, если объект находится в этой позиции, прежде чем вы его удалите. Если вы добавили 1,2,3,4,5 в этом порядке и хотите иметь возможность удалять их только в том же порядке, вы проверяете, находится ли объект, который вы пытаетесь удалить, с индексом 0 в массиве первым.