[Include] foreach от ****** или как оно работает
#2

Также добавил if(IsPlayerNPC(forplayerid)) return 1;
т.к. для ботов не надо что либо добавлять или удалять.

В общем вот как работает эта хрень

Код:
[23:25:00] 2. start:0,count:1, array[last:0]: 258
[23:25:00] 2. start:0,count:2, array[last:258]: 301
[23:25:00] 2. start:0,count:3, array[last:301]: 383
[23:25:00] 2. start:0,count:4, array[last:383]: 412
[23:25:00] 2. start:0,count:5, array[last:412]: 566
[23:25:18] 1. start:0,count:6, array[value:22]: 258, array[last:0]: 22
[23:25:18] 3. start:0,count:6, array[cur:22]: 301, array[value:258]: 301
[23:25:18] 4. start:0,count:5, array[value:258]: -1
[23:25:18] 3. start:0,count:5, array[cur:22]: 383, array[value:301]: 383
[23:25:18] 4. start:0,count:4, array[value:301]: -1
[23:25:18] 3. start:0,count:4, array[cur:22]: 412, array[value:383]: 412
[23:25:18] 4. start:0,count:3, array[value:383]: -1
[23:25:18] 3. start:0,count:3, array[cur:22]: 566, array[value:412]: 566
[23:25:18] 4. start:0,count:2, array[value:412]: -1
[23:25:18] 3. start:0,count:2, array[cur:22]: -1, array[value:566]: -1
[23:25:18] 4. start:0,count:1, array[value:566]: -1
[23:25:26] 3. start:0,count:1, array[cur:0]: -1, array[value:22]: -1
[23:25:27] 4. start:0,count:0, array[value:22]: -1
Сдесь мы видим что в первой строке
[23:25:00] 2. start:0,count:1, array[last:0]: 258
в ячейку array[0] заносится значение 258
а потом в ячейку array[258] заносится значение 301
т.е. массив формируется не последовательно.
В итоге если потом использовать этот массив от 0 до #define MAX_STREAMEDCARS 100
то мы не найдём наши все значение, придётся проверять не пустая ли ячейка и прогонять до MAX_VEHICLES
Вот в этом здесь собака и зарыта. Т.е. теряется вся оптимизация.

Кто нибудь переделывал эту хрень, чтобы массив записывался последовательно или сортировался сразу?
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)