Добрый вечер! Судя по предоставленным ошибкам и коду, у вас несколько проблем в скрипте на Pawn для системы администраторов в SAMP.
Вот несколько шагов, которые помогут устранить ошибки:
Ошибка: unreachable code (строка 522)
Проверьте, что код после оператора return или аналогичного действительно нужен. Возможно, что он никогда не выполняется.
Ошибка: invalid subscript (строка 534)
Возможно, вы пытаетесь обратиться к массиву или переменной неверным образом. В вашем случае строка player[playerid][pAdmin] может быть причиной. Убедитесь, что массив player объявлен правильно и имеет нужные размеры.
Ошибка: expected token ';' but found ']' (строка 534)
Эта ошибка указывает на синтаксическую ошибку, где ожидается точка с запятой, но найдена закрывающая скобка. Проверьте строку, чтобы убедиться, что синтаксис правильный.
Ошибка: invalid expression, assumed zero (строка 534)
Это связано с предыдущими ошибками. Сначала исправьте синтаксическую ошибку.
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/giveadmin", cmdtext, true, 10) == 0)
{
new string[55];
player[playerid][pAdmin] = 1;
new dostup = 1000 + random(8999);
player[playerid][pAdostup] = dostup;
format(string, sizeof(string), "Вы выдали себе пост администратора %d уровня. Пароль %d", player[playerid][pAdmin], player[playerid][pAdostup]);
SendClientMessage(playerid, 0xFFFFFFFF, string);
return true;
}
else if (strcmp("/alogin", cmdtext, true, 10) == 0)
{
if(player[playerid][pAdmin] < 1)
{
ShowPlayerMessage(playerid, 0xFFFFFFFF, "Вы не занимаете пост админа!");
return false;
}
ShowPlayerDialog(playerid, DIALOG_ADMINLOGIN, DIALOG_STYLE_PASSWORD, "Админ-авторизация", "Введите админ пароль ниже:", "Войти", "");
return true;
}
return false;
}
Обратите внимание:
Убедитесь, что переменные pAdmin и pAdostup объявлены и инициализированы корректно.
Проверьте синтаксис форматирования строки в функции format.
Убедитесь, что используемые функции (ShowPlayerMessage, ShowPlayerDialog, и т.д.) правильно объявлены и доступны.
Код:
Заранее спасибо если поможете.