попробуй i заменить на playerid
И где связанно.
PHP код:
foreach(Player,playerid)
{
new summaAmmo = 0;
for(new sl = 0, ammo = 0; sl < 13; sl++)
{
GetPlayerWeaponData(playerid , sl, ammo, ammo);
summaAmmo += ammo;
}
}
Вид для печати
Да не в этом разницы нету) название просто меняешь, я просто не уверен что summaAmmo вытекает только для одного, хотя всё обнуляется, в общем как я и писал иногда очень редко вытекает откуда то 0 слот с 1 аммо, то есть кулаки, но их не где нету в выдачи даже в SetSpawnInfo и то 0 стоит, мож сам сервер иногда как то сам по себе выдаёт вот и не пойму...
Задолбался с этим античитом уже, такой же рабочий как и этот смайлик :russian_roulette:
в слоте 0 может быть кастет, так же как и 1 слот(лапата, кий и тд) может вернуть единицу и 10 слот(цветы, дилдо и тд) тоже https://wiki.sa-mp.com/wiki/Weapons если нужна сумма патронов только огнестрела/взрывчатки пропускай эти слоты
//DeimoS: Слоты со 2-го по 7-ой
Так когда кастет или лопатоподобное оружие выдаётся в переменную должна идти запись всё равно,
первое время это так, а потом чихарда начинается откуда то берётся этот 1 ammo в 0 слоте:facepalm:
Может быть такое что оружие от чита осталось не юзался сброс перед киком и оно осталось в playerid?
Как то не подумал сброс делать, ещё потестирую с ним.
На сколько я понял - античит на патроны. Зачем же тогда к общей гребенке холодное оружие? Пропускай его, для этого оружия достаточно сверять ИД полученного(выданного сервером) с ИД'ом которое у игрока в руках, патроны отслеживать бессмысленно. И вообще алгоритм античита на оружие я представляю по другому и в моем представлении нет такого цикла, не понимаю - Для чего он?
Да прибудет с тобой сила логирования:wizard:
(абсолютно голый зашёл на сервак один раз как то бомжиком и мне логи выдали что у меня Кулаки с 1 ammo=D)
Вот откуда)
_______
Следующий вопрос:
Допустим создал переменную с размером 144 по всей длине чата
Если я допустим указал размер 30, то будет ли формат юзать 30 или же возьмёт все 144?PHP код:
new str[144];
format(str,144,"%s заюзал буквы и символов на размер 144 , во весь чат короче.....",pInfo[playerid][pName]);
SendClientMessage(playerid,-1,str);
//ну а ниже например ещё один мессейдж
format(str,30,"Hello %s",pInfo[playerid][pName]);
SendClientMessage(playerid,-1,str);
Во втором параметре указывается максимальное число символов, которые format будет обрабатывать. Укажи ты там хоть 200, массив от этого не увеличиться, но если в format прописать текст длиной в 200 символов, он попытается его записать в массив...
В общем, второй параметр в format и работа массива никак не связаны. Что в первом случае у тебя будет запись в массив с 144 ячейками, что во втором.
И да, размер массива должен быть 145, ибо 144 - максимальное число символов в строке для отправки в SendClientMessage, но нуль-символ там не учитывается
У меня есть тупые вопросы)
1.Вопрос.
Если создать логотип из 5 ТД глобальных то при онлайне 200 будет вызвано 1000 глобальных ТД так это или я что то не правильно понял с глобальными ТД.(и это получается логотип лучше на player Тд создавать)
2. Вопрос.
Из public OnGameModeInit() я убрал все глобальные ТД в stock
и добавил загрузку этого стока в public OnGameModeInit() и теперь ТД криво появляться стали в чем может быть проблема ? может кто сталкивался