У меня есть очень странные ошибки с помощью NSMutableArray в cocos2d/Xcodeобъект внутри NSMutableArray не обновлять сразу после обновления
В моем коде, у меня есть NSMutableArray объект, содержащий
NSMutableArray *peasantArray;
и другой NSMutableArray Содержат объект в
NSMutableArray *treeArray;
в запланированной функции обновления, я назвал другую функцию, которая, по существу, следующие функции: Я бы прошел через весь объект A внутри * peasantArray, и если какой-либо крестьянский объект имеет переменную var == GameEntityCommandIdling, я бы изменил объект B во втором NSMutableArray * treeArray,
Проблема в том, что я замечаю иногда после того, как я модифицировал объект A внутри peasantArray, измененная переменная (var) модифицируется/обновляется внутри объекта A после того, как печатается статус переменной плановым образом; но если я снова займусь NSMutableArray * peasantArray в следующем расписании (1/30s), я снова найду объект A со старой/не обновленной переменной (var), и это приводит к неправильному алгоритму ,
Однако, если я цикл через NSMutableArray * peasantArray меньше, чем 1second, каждый раз, когда я хотел бы видеть переменную (VAR) для объекта а правильно, как обновленной переменной величины,
так есть ограничение на быстро я могу перебирать NSMutableArray?
вот некоторые кусок кода, который я в основном только что упомянул,
NSMutableArray *peasantArray;
NSMutableArray *treeArray;
.....
peasantArray = [[[NSMutableArray alloc] initWithCapacity:1]retain];
for(int i = 0; i < 1; i++)
{
Peasant *A = [[Peasant alloc] init];
[peasantArray addObject:A];
}
.... // внутри обновление()
for (int i = 0;i < [peasantArray count];i++)
{
Peasant *A = [peasantArray objectAtIndex:i];
if (A.status == something)
{
printf("A.status is something\n");
A.status = sometingelse;
...
//update other things not related to this NSMutableArray or object
}
}
.....
SO ошибка в том, что иногда у меня будет несколько Printf из «A.status что-то», хотя только один из него должен быть напечатан,
Я очень признателен за любую помощь,
Спасибо,
Какой тип 'статус'? Это «NSString»? – Anna