PDA

Просмотр полной версии : [Вопрос] Отличились на капте



GoJIoBoJIoMkA
13.01.2019, 13:23
Здравствуйте!
Обнаружил вот так баг, есть в моде сисма, которая выводит 10-ку лучших людей той или иной банды после капта.
Которые отличились на капте проще говоря!
Есть пикап в каждой банде гетто, заходишь на него, и тебе показывает тех кто отличился, но проблема в том, что там показывает какую-то дичь, смотрите скрин ниже.
http://i12.pixs.ru/storage/0/5/1/samp111111_1709826_31153051.jpg
Должно быть как, "1-е место такой-то - Убийств столько-то - Банда такая-то" А там не понятно что!
Вот паблик отвечающий за эту тему!

public ShowTop10Capture(playerid,fraction)
{
new rows,fields;
cache_get_data(rows,fields,connects);
new str[] = "%s{c0c0c0}%i место: "WHITE"%s. Убийств = %i. (Банда: {%06x} %s)\n\n"; string=""; new NAME[24];
for(new i; i < rows; i++)
{
if(cache_get_field_content_int(i, "pMember") != fraction) continue;
cache_get_field_content(i, "Name", NAME, connects);
format(string,sizeof(string),str,string,i+1,cache_get_field_content_int(i, "kill_capture", connects),FractionInfo[fraction][fColor] >>> 8,FractionInfo[fraction][fName]);
}
ShowPlayerDialog(playerid, 0000, DIALOG_STYLE_MSGBOX, ""SERVER"10-ка отличившийся бандитов:", string, "Принять", "");
return 1;
}
Пробовал сам исправить, крутил эти операторы туда сюда, переписывал по разному, но ни чего не выходит!
Помогите пожалуйста это уладить!

DeimoS
15.01.2019, 10:36
Ты ник забыл вывести при форматировании.
Достаточно было нормально оформить код, чтоб всё было наглядно, и было бы гораздо проще
public ShowTop10Capture(playerid,fraction)
{
new rows, fields;
cache_get_data(rows, fields, connects);
if(!rows)
return 0;
string[0]=0;
new player_name[MAX_PLAYER_NAME];
for(new i; i < rows; i++)
{
if(cache_get_field_content_int(i, "pMember") != fraction)
continue;
cache_get_field_content(i, "Name", player_name, connects);
format(string,sizeof(string), "%s{c0c0c0}%i место: "WHITE"%s. Убийств = %i. (Банда: {%06x} %s)\n\n",
string,
i+1,
player_name,
cache_get_field_content_int(i, "kill_capture", connects),
FractionInfo[fraction][fColor] >>> 8,
FractionInfo[fraction][fName]);
}
ShowPlayerDialog(playerid, 0000, DIALOG_STYLE_MSGBOX, ""SERVER"10-ка отличившийся бандитов:", string, "Принять", "");
return 1;
}

GoJIoBoJIoMkA
17.01.2019, 00:54
Всё работает, спасибо тебе!
Тема закрыта!