• 0
Hali_Gali

Ошибка в компиляции команды

Вопросы

Выдает ошибки в этой команде

Спойлер

if(strcmp(cmd, "/g", true) == 0)
    {
        if(PGang[playerid] <= 0)
        {
            SendClientMessage(playerid, COLOR_RED, " Âû íå ñîñòîèòå íè â îäíîé èç áàíä !");
            return 1;
        }
        if(PlayerInfo[playerid][pVIP] == 3)
        {
            SendClientMessage(playerid, COLOR_YELLOW, "Âû íå ìîæåòå ãîâîðèòü, ïîêà äåëî î Âàøåé äåïîðòàöèè íà ñëóøàíèè !");
            SendClientMessage(playerid, COLOR_YELLOW, "Âñå ñîîáùåíèÿ îòïðàâëÿéòå â àäìèí-÷àò ( /a [òåêñò] ) !");
            return 1;
        }
        if(PlayerInfo[playerid][pMutedsec] > 0)
        {
            SendClientMessage(playerid, COLOR_YELLOW, "Âû íå ìîæåòå ãîâîðèòü, Âàñ çàòêíóëè !");
            return 1;
        }
        new length = strlen(cmdtext);
        while ((idx < length) && (cmdtext[idx] <= ' '))
        {
            idx++;
        }
        new offset = idx;
        new result[128];
        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
        {
            result[idx - offset] = cmdtext[idx];
            idx++;
        }
        result[idx - offset] = EOS;
        if(!strlen(result))
        {
            SendClientMessage(playerid, COLOR_GRAD2, " Èñïîëüçóéòå: /g [òåêñò]");
            return 1;
        }
        new per55 = 0;
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            if(IsPlayerConnected(i) && PGang == PGang[playerid] && i != playerid) {per55 = 1;}
        }
        if(per55 == 0)
        {
            SendClientMessage(playerid, COLOR_RED, " Ñåé÷àñ íà ñåðâåðå íåò äðóãèõ èãðîêîâ èç Âàøåé áàíäû !");
            return 1;
        }
        new string555[64];//ïðåîáðàçóåì 32-áèòíûé öâåò â 24-áèòíûé (÷òî áû äåñÿòè÷íîå çíà÷åíèå öâåòà áûëî â
        strmid(string555, GColor[PGang[playerid]], 0, 6, sizeof(string555));//ïîëîæèòåëüíîì äèàïàçîíå ÷èñåë)
        new hex[MAX_PLAYERS];//ïåðåâîäèì øåñòíàäöàòèðè÷íûé öâåò â äåñÿòè÷íûé ñòàíäàðòíîé ôóíêöèåé
        hex[playerid] = HexToInt(string555);
        new dopper[7];//ïåðåâîäèì äåñÿòè÷íûé öâåò â øåñòíàäöàòèðè÷íûé (äëÿ îêðàñêè íàçâàíèÿ áàíäû)
        dopper[0] = 48;//ñàìûé ñòàðøèé ðàçðÿä = 0 (íà ñëó÷àé, åñëè öâåò â ïðåäåëàõ 6 áàéò)
        new dop11 = hex[playerid];
        new dop22 = 0;
        if(dop11 > 16777215)//åñëè öâåò çà ïðåäåëàìè 3-õ áàéò (îäèí èç âàðèàíòîâ íå êîððåêòíîãî öâåòà), òî:
        {
            dop22 = dop11 / 16777216;//âû÷èòàåì ïåðåïîëíåíèå...
            dop11 = dop11 - (dop22 * 16777216);
            if(dop22 > 9)//è çàïèñûâàåì ýòî ïåðåïîëíåíèå â ñàìûé ñòàðøèé ðàçðÿä
            {
                dopper[0] = dop22 + 55;
            }
            else
            {
                dopper[0] = dop22 + 48;
            }
        }
        new dop33 = 1048576;
        for(new j = 1; j < 7; j++)//ïåðåâîä äåñÿòè÷íîãî öâåò â øåñòíàäöàòèðè÷íûé
        {
            dop22 = dop11 / dop33;
            dop11 = dop11 - (dop22 * dop33);
            if(dop22 > 9)
            {
                dopper[j] = dop22 + 55;
            }
            else
            {
                dopper[j] = dop22 + 48;
            }
            dop33 = dop33 / 16;
        }
        strdel(string555, 0, 64);//î÷èùàåì ïåðåìåííóþ 24-áèòíîãî öâåòà
        strmid(string555, dopper, 1, 7, sizeof(string555));//çàïèñûâàåì â ïåðåìåííóþ 24-áèòíîãî öâåòà âîññòàíîâëåííûé öâåò
        {
            if(playspa[playerid] == 1 && PGang[playerid] > 0)
            {
                printf(" (gid:%d) <GC> %s [%d]: %s", PGang[playerid], PlayNam(playerid), playerid, result);
                format(string, sizeof(string), " <GC> {%s}[%s] %s {28F90E}[ID:%d]: {E5B884}%s", string555, GName[PGang[playerid]], PlayNam(playerid), playerid, result);
            }
        }
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            if(IsPlayerConnected(i) && PGang[playerid] == PGang)
            {
                SendClientMessage(i, COLOR_YELLOW, string);
            }
        }
        return 1;
    }

 

Вот все дефки от системы банд,

Спойлер

new tgang[MAX_PLAYERS], gangskin[MAX_PLAYERS], play333[MAX_PLAYERS] = -1;//Gangs system
new GangName[MAX_GANGS][130], Gang[MAX_GANGS], GangSA[MAX_GANGS],
    GangLvl[MAX_PLAYERS], GName[MAX_GANGS][130], GColorDec[MAX_GANGS],
    GColor[MAX_GANGS][16], PGang[MAX_PLAYERS], GColorHex[MAX_GANGS][16],
    Float:GSpawnX[MAX_GANGS], Float:GSpawnY[MAX_GANGS], GTDReg[MAX_GANGS][32],
    Float:GSpawnZ[MAX_GANGS], GSkin[MAX_GANGS][7], GHead[MAX_GANGS][64],
    GInter[MAX_GANGS], GWorld[MAX_GANGS], GPlayers[MAX_GANGS], GangDopper[MAX_PLAYERS];
new locper3[MAX_PLAYERS];//âñïîìîãàòåëüíàÿ ïåðåìåííàÿ ID áàíä äëÿ çàïèñè
new idgangsave[MAX_PLAYERS];//ID áàíä äëÿ çàïèñè

 

хотел сделать команду, для чата банды на Дрифт сервере, выдает эти ошибки

Безымянный.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 ответов на этот вопрос

  • 0

@Hali_Gali, тогда попробуйте поменять строку 

hex[playerid] = HexToInt(string555);

На вот эту:

HexToInt(string555, hex[playerid]);

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

PlayerName может?
У вас неизвестный "символ"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

PlayNam(playerid) - отвечает за ник игрока

попробуй его заменить на PlayerInfo[playerid][pName]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

5e4f219ed0c37_.png.85b56663f6d75b532fe0181fc13c56cf.png

6 часов назад, SCRIPTMAN сказал:

PlayNam(playerid) - отвечает за ник игрока

попробуй его заменить на PlayerInfo[playerid][pName]

hex[playerid] = HexToInt(string555); теперь вот в этой строке осталась ошибка, в не даже не знаю что делать

Отредактировано пользователем Hali_Gali

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@Hali_Gali, ну, покажите, как объявлена переменная hex и функция HexToInt.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
6 минут назад, odosenok сказал:

@Hali_Gali, ну, покажите, как объявлена переменная hex и функция HexToInt.

new hex[MAX_PLAYERS]; // переводич шестнадцатиричный цвет в десятичный стандартной функции
        hex[playerid] = HexToInt(string555);

Только вот это нашел 

stock HexToInt(string[], &mres)

 

Отредактировано пользователем Hali_Gali

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@Hali_Gali, вот, скиньте весь код stock HexToInt(string[], &mres).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@odosenok 

3 минуты назад, odosenok сказал:

@Hali_Gali, вот, скиньте весь код stock HexToInt(string[], &mres).

 

Спойлер

stock HexToInt(string[], &mres)
{
    new para = 1;//функция выполнена успешно
    new cur = 1;
    mres = 0;
    new cur22 = 1, res[4], locper = 0, ind;
    res[0] = 0;
    res[1] = 0;
    res[2] = 0;
    res[3] = 0;
    new i = strlen(string);
    if(i < 1 || i > 8) { return -1; }//ошибка в формате цвета
    if(i == 1 || i == 3 || i == 5 || i == 7) { locper = 1; }
    while(i > 0)
    {
        if(string[i-1] < 48 || (string[i-1] > 57 && string[i-1] < 65) || string[i-1] > 70)
        {
            para = -1;//ошибка в формате цвета
            break;
        }
        ind = ((i + locper) / 2) - 1;
        if(string[i-1] < 58)
        {
            mres = mres + cur * (string[i-1] - 48);
            res[ind] = res[ind] + cur22 * (string[i-1] - 48);
        }
        else
        {
            mres = mres + cur * (string[i-1] - 65 + 10);
            res[ind] = res[ind] + cur22 * (string[i-1] - 65 + 10);
        }
        cur = cur * 16;
        cur22 = cur22 * 16;
        i--;
        locper++;
        if(locper > 1)
        {
            locper = 0;
            cur22 = 1;
        }
    }
    if(para == -1) { return -1; }//ошибка в формате цвета
    if((res[0] + res[1] + res[2]) < 192) { para = -2; }//тёмный цвет
    return para;
}

 

 

Заметка от Cawfee , создано

Пожалуйста, ознакомьтесь с информацией о том, как правильно выкладывать код на форум.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@odosenok Появилась такая проблема, у меня такой строки нет даже

Безымянный.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@Hali_Gali, введите в поиске по моду (CTRL + F) "Zashifrovano" без кавычек. Увидите что-то вроде такого:

new Zashifrovano;

Вот эту строку и удалите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@odosenok Вот в этом и прикол, что у меня нет такого слова даже в моде

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@Hali_Gali, значит кто-то захотел поглумиться над будущими разработчиками данного мода :D Посмотрите в файлах сервера, нигде ли нет этого слова. Если не найдете, можете, при желании, скинуть папку сервером в личные сообщения. Но вообще данное предупреждение не критично и никак не повлияет на работу игрового сервера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

@odosenok Хорошо, сейчас полазию

@odosenok спасибо, не нашел ни где этой финтифлюжки, главное работает команда, спасибо большое

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Talex
      От Talex
      Всем привет, сливаю первый мод!
      Информация о моде:

      — Основа Gamenix.
      — Мод переведен на Mysql R39, теперь ни каких слётов нет, мод работает стабильно с онлайном 160+.
      — Новый автосалон на TextDraw.
      — Система 3-х автомобилей (1 можно купить по дефолту, 2 и 3 за донат).
      — Автомобили у игроков теперь не пропадают (Id'ы авто сбивались, с номерами теперь тоже всё в порядке).
      — Оформление сервера полностью переработано, теперь оно более красивое.
      — Защита от копирования карты.
      — в меню сервера добавлен пункт визуальных настроек.
      — Номера на транспорт теперь можно приобрести в /donate.
      — Сделан новый красивый спидометр.
      — При получении номера, добавлен выбор региона.
      — Сделана система радаров и промокодов, создание прямо из игры.
      — Новый интерьер казино.
      — Магазин скинов теперь на TextDraw.
      — Автошкола полностью функционирует.
      — Добавлена информация после коннекта о последнем входе в собственный аккаунт.
      — Приватная защита от всех видов DDoS атак и DoS атак.                                                                                                                                    
      — пароль от АП (/alog) теперь у каждого администратора индивидуальный.
      — Изменено оформление самого мода
      Это не все изменения мода, их ещё очень много. все не упомнишь. 
      Автор мода: Неизвестен
      CUNBERS RP 8.4.3.rar
       

    • Tufxgod
      От Tufxgod
      Пойду на проект в качестве разработчика.
      Опыт в павн 2 года, умею писать системы любой сложности, владею mysql.
      Пишите в лс!
    • tivan666ban
      От tivan666ban
      дедуги в консоли при подключении к серверу: [debug] Run time error 3: "Stack/heap collision (insufficient stack size)"
      [debug]  Stack pointer (STK) is 0xFFFEC394, heap pointer (HEA) is 0x1B40
      [debug] AMX backtrace:
      [debug] #0 00000000 in public OnPlayerConnect () in Untitled.amx
    • tivan666ban
      От tivan666ban
      помогите пожалуйста самп mode unknown (сразу говорю что все плагины прописаны даже крашдетектор не ругается но всё равно мод ункновн)
    • Mister Odin
      От Mister Odin
      tt.txt