SA-MP Forums Archive
Проблема c функцией стримера - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: Проблема c функцией стримера (/showthread.php?tid=638738)



Проблема c функцией стримера - Salik - 05.08.2017

Хаю хай с вами Иван.. Ой не то, хеллоу почаны тут проблемка вышла с функцией стримера никак не могу понять как взять количество(count) объектов с указанной позиции, т.e функция -
PHP код:
Streamer_GetNearbyItems(XYZtypeitems[], sizeof(items), 300.0); 
т.e в тип вбиваю - STREAMER_TYPE_OBJECT
но как то странно мне что в items идет массив, показываю информацию принтом printf(..."", items)
Выводит 1 или вообще 0 что я делаю не так?


Re: Проблема c функцией стримера - stabker - 05.08.2017

Скорее всего так:

PHP код:
new count;
for(new 
isizeof items && items[i] != 0i++)
{
    
count++;
}
printf("%d"count); 
Странно, конечно, что она просто не возвращает количество найденных предметов.


Re: Проблема c функцией стримера - Salik - 05.08.2017

Quote:
Originally Posted by stabker
Посмотреть сообщение
Скорее всего так:

PHP код:
new count;
for(new 
isizeof items && items[i] != 0i++)
{
    
count++;
}
printf("%d"count); 
Странно, конечно, что она просто не возвращает количество найденных предметов.
Неа вообще не то, вообще 0 эффекта.


Re: Проблема c функцией стримера - Salik - 06.08.2017

Кто нибудь поможет, нет?


Re: Проблема c функцией стримера - stabker - 06.08.2017

Quote:
Originally Posted by Salik
Посмотреть сообщение
Кто нибудь поможет, нет?
PHP код:
for(new isizeof itemsi++)
{
    
printf("%d"items[i]);

Если так сделать, то что выводит?


Re: Проблема c функцией стримера - Salik - 08.08.2017

Разные вещи и то каждый раз почти рандом


Re: Проблема c функцией стримера - stabker - 08.08.2017

Только что проверил, все работает как надо.


Re: Проблема c функцией стримера - Salik - 08.08.2017

Можешь скинуть пример что-бы Объекты ловил.


Re: Проблема c функцией стримера - stabker - 08.08.2017

Quote:
Originally Posted by Salik
Посмотреть сообщение
Можешь скинуть пример что-бы Объекты ловил.
PHP код:
CreateDynamicObject(1950010000.010000.010000.0000); 
CreateDynamicObject(1950010000.010000.010000.0000); 
CreateDynamicObject(1950010000.010000.010000.0000); 
 
new 
items[10] = { -1, ... }; //массив должен быть заполнен одинаковыми значениями (функция не обнуляет массив!), которые не могут быть идом предмета из стримера 
 
Streamer_GetNearbyItems(10000.010000.010000.0STREAMER_TYPE_OBJECTitemssizeof items10.0); 
new 
amount
printf("Иды найденных объектов:"); 
for(; 
amount sizeof items && items[amount] != -1amount++) //-1 это значение, которым были забиты все ячейки массива 

    
printf("%d"items[amount]); 

 
printf("Всего найдено объектов: %d"amount); 
Примерно так я тестил и все работало.


Re: Проблема c функцией стримера - Salik - 08.08.2017

Это типа для 500 объектов массив на 500? Жесть получается какая-то...

--

Я хотел сделать функцию фриза с кол-вом объектов т.e (сколько объектов * 2 + пинг + 250) таймером фриз, получается нагруженной функцией для большого онлайна, т.e если в массиве перезапись идет то норм?


Re: Проблема c функцией стримера - stabker - 08.08.2017

Quote:
Originally Posted by Salik
Посмотреть сообщение
Это типа для 500 объектов массив на 500? Жесть получается какая-то...

--

Я хотел сделать функцию фриза с кол-вом объектов т.e (сколько объектов * 2 + пинг + 250) таймером фриз, получается нагруженной функцией для большого онлайна, т.e если в массиве перезапись идет то норм?
Оказывается, инфа в вики устарела (https://github.com/samp-incognito/sa...gin/issues/225). Функция уже возвращает количество ВСЕХ предметов в радиусе, так что можете делать так:

PHP код:
new items[1];
  
new 
amount Streamer_GetNearbyItems(10000.010000.010000.0STREAMER_TYPE_OBJECTitemssizeof items10.0);
//amount будет хранить количество объектов 
если нужно просто получить их количество.


Re: Проблема c функцией стримера - Salik - 09.08.2017

Воу воу воу, спасибо, теперь нужно сделать функцию фриза индивидуальной)