PDA

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



kala4iks
03.03.2017, 11:12
C:\Users\Владелец\Desktop\Новая папка (8)\gamemodes\motiongm.pwn(19208) : error 017: undefined symbol "str"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


1 Error.



CMD:makeleader(playerid,params[])
{
// заменить 6 на 7.
if(PI[playerid][pAdmin] != 6 && PI[playerid][pAdmin] != 9 && PI[playerid][pAdmin] != 10 && PI[playerid][pAdmin] != 11 || AdminLogged[playerid] == false)return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Недостаточно прав для использования команды.");
if(sscanf(params,"u",params[0]))return SendClientMessage(playerid,0x00BFFFAA,"[КОМАНДЫ] {FFFFFF}/makeleader [id игрока].");
if(!IsPlayerConnected(params[0]))return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Этот игрок не в сети.");
if(PlayerLogged[params[0]] == false)return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Этот игрок не авторизован.");
for(new i = 1; i < sizeof(FInfo); i++)
{
static leader[] = "[%s] %s\n";
new str[sizeof(leader)+2+25-4];
format(str,sizeof(str),leader,FInfo[i][fID],FInfo[i][fName]);
}
ShowPlayerDialog(playerid,6969,2,"{33CCFF}Выберите лидерку",str,"Выбрать","Закрыть");
return 1;
}

Alpano
03.03.2017, 11:53
CMD:makeleader(playerid,params[])
{
// заменить 6 на 7.
if(PI[playerid][pAdmin] != 6 && PI[playerid][pAdmin] != 9 && PI[playerid][pAdmin] != 10 && PI[playerid][pAdmin] != 11 || AdminLogged[playerid] == false)return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Недостаточно прав для использования команды.");
if(sscanf(params,"u",params[0]))return SendClientMessage(playerid,0x00BFFFAA,"[КОМАНДЫ] {FFFFFF}/makeleader [id игрока].");
if(!IsPlayerConnected(params[0]))return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Этот игрок не в сети.");
if(PlayerLogged[params[0]] == false)return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Этот игрок не авторизован.");
new strEx[256];
for(new i = 1; i < sizeof(FInfo); i++) //Ты объявляешь str в цикле, после его выполнения он удаляется из памяти
{
static leader[] = "[%s] %s\n";
new str[sizeof(leader)+2+25-4];
format(str,sizeof(str),leader,FInfo[i][fID],FInfo[i][fName]);
strcat(strEx,str);
}
//следовательно, тут его не будет...
ShowPlayerDialog(playerid,6969,2,"{33CCFF}Выберите лидерку",strEx,"Выбрать","Закрыть");
return 1;
}

kala4iks
03.03.2017, 12:47
CMD:makeleader(playerid,params[])
{
// заменить 6 на 7.
if(PI[playerid][pAdmin] != 6 && PI[playerid][pAdmin] != 9 && PI[playerid][pAdmin] != 10 && PI[playerid][pAdmin] != 11 || AdminLogged[playerid] == false)return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Недостаточно прав для использования команды.");
if(sscanf(params,"u",params[0]))return SendClientMessage(playerid,0x00BFFFAA,"[КОМАНДЫ] {FFFFFF}/makeleader [id игрока].");
if(!IsPlayerConnected(params[0]))return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Этот игрок не в сети.");
if(PlayerLogged[params[0]] == false)return SendClientMessage(playerid,0xFF0000AA,"[ОШИБКА] {FFFFFF}Этот игрок не авторизован.");
new strEx[256];
for(new i = 1; i < sizeof(FInfo); i++) //Ты объявляешь str в цикле, после его выполнения он удаляется из памяти
{
static leader[] = "[%s] %s\n";
new str[sizeof(leader)+2+25-4];
format(str,sizeof(str),leader,FInfo[i][fID],FInfo[i][fName]);
strcat(strEx,str);
}
//следовательно, тут его не будет...
ShowPlayerDialog(playerid,6969,2,"{33CCFF}Выберите лидерку",strEx,"Выбрать","Закрыть");
return 1;
}

Спасибо большое за помощь.