• 0
MrNARTI

ошибка при компеляци

Вопросы

Всем привет делал команду /astats, с шаблона.

Спойлер

ко всем енумам
enum ASTATS {
     mute,
     ban,
     report,
     spawn,
     kick,
     warn,
     jail
};
new InfoAstats[ASTATS];

в команду мут:
InfoAstats[0] += 1;
в команду бан:
InfoAstats[1] += 1;
в команду ответа на репорт:
InfoAstats[2] += 1;
в команду спавн:
InfoAstats[3] += 1;
в команду кик:
InfoAstats[4] += 1;
в команду варн:
InfoAstats[5] += 1;
в команду джаил:
InfoAstats[6] += 1;


в конец мода
cmd:astats(playerid)
{
 if(!GetPlayerAdminEx(playerid)) return 1;
 
 new fmt_text[512];
 format(fmt_text, sizeof(fmt_text),
 ""tire" NickName: {FFFF00}%s\n"\
 ""tire" Уровень администратора:{FFFF00} %d\n"\
 ""tire" Выговоры: {FFFF00}%d из 3\n"\
 ""tire" Мутов: {FFFF00} %d\n"\
 ""tire" Джаилов:{FFFF00} %d\n"\
 ""tire" Варнов:{FFFF00} %d\n"\
 ""tire" Банов:{FFFF00} %d\n"\
 ""tire" Спавнов:{FFFF00} %d\n"\
 ""tire" Киков: {FFFF00}%s\n"\
 ""tire" Ответов на репорт: {FFFF00}%d\n",
 GetPlayerNameEx(playerid),
 GetPlayerAdminEx(playerid),
 GetPlayerData(playerid, P_ADMIN_WARN),
 InfoAstats[0],
 InfoAstats[6],
 InfoAstats[5],
 InfoAstats[1],
 InfoAstats[3],
 InfoAstats[4],
 InfoAstats[2]
);
ShowPlayerDialog(playerid, 8193, DIALOG_STYLE_MSGBOX, "Статистика администратора", fmt_text, "Понял");
return 1;
}

 

 

сделал как в шаблоне, но появились ошибки.

Спойлер

C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(78912) -- (78922) : error 001: expected token: "-string end-", but found "-identifier-"
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(78922) : error 017: undefined symbol "tire"
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(78922) : warning 215: expression has no effect
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(78922) : error 001: expected token: ";", but found "-identifier-"
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(78922) : fatal error 107: too many error messages on one line

 

Помогите решить пожалуйста.

 

Заранее спасибо кто помог.

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

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

3.2. Код необходимо брать в тег "Код", а код более 10 строк – еще и в "Спойлер". Как это сделать рассказано в разделе "FAQ".

Устное предупреждение.

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


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

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

  • 0

@MrNARTI Это у вас так в коде написано или это шаблон?

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

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


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

@Доналдо Фарекелка Так и в коде и шаблон.

 

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


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

@MrNARTI Сначала почитайте: как строиться код(Структура), как делать диалог и так далее

Ну приведу пожалуй пример. Вот так к примеру должна выглядеть статистика: 

 

CMD:astats(playerid, params[])
{
    if(PlayerInfo[playerid][pAdmin] < 1return 1// Проверка на админ.права
    if(sscanf(params,"d",params[0])) return SendClientMessage(playerid, COLOR_WHITE, ""#information"Введите: /astats [id]");
    if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, -1""#net"Игрок не найден!"); 
    AShowStats(playerid,params[0]); // Переход к админ.статистике
    // Также можно сделать через pVar
    return 1;
}
AShowStats(playerid,targetid)
{
    if(!IsPlayerConnected(targetid)) return 1// Проверка онлайн ли игрок. Можно убрать, так как мы уже проверяем это в кмд
    //
    new check_kick,check_warn,check_ban,check_mute,check_jail,check_pm; // Новые переменные
    // 
    // ..... // Берем данные для переменных из бд ( НЕ ЗАБУДЬ ) // ЭТО ЕСЛИ НОВЫЕ ПЕРЕМЕННЫЕ
    //
    string = ""
    format(stringer,MAX_STR,""SERVER"________________________________________________________________________{E1DEDE}\n\n");
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tНик:\t\t\t\t\t"SERVER"%s\n",PlayerInfo[targetid][pNames]);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\t{FF0000}Администратор:\t\t\t"SERVER"{FF0000}%d уровня\n",PlayerInfo[targetid][pAdmin]);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tАдмин-репутация:\t\t\t"SERVER"%i\n",PlayerInfo[targetid][pAdmReputation]);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tКикнул:\t\t\t\t"SERVER"%i\n",check_kick); // Лучше заменить на PI(PlayerInfo)
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tЗаварнил:\t\t\t\t"SERVER"%i\n",check_warn);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tЗабанил:\t\t\t\t"SERVER"%i\n",check_ban);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tВыдал Бан Чата:\t\t\t"SERVER"%i\n",check_mute);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tПосадил:\t\t\t\t"SERVER"%i\n",check_jail);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tОтветил на репорт:\t\t\t"SERVER"0\n"// Сюда свою переменную);
    strcat(string,stringer);
    format(stringer,MAX_STR,""WHITE"\tПохвал от игроков:\t\t\t"SERVER"0\n"// Сюда свою переменную);
    strcat(string,stringer);
    format(stringer,MAX_STR,""SERVER"________________________________________________________________________{E1DEDE}\n\n");
    strcat(string,stringer);
    ShowPlayerDialog(playerid,0000,DIALOG_STYLE_MSGBOX,""SERVER"\tСтатистика Администратора",string,"Закрыть",""); 
    return 1;
}

Это лишь пример.

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

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


Ссылка на сообщение
Поделиться на другие сайты
  • 0
В 14.12.2024 в 15:57, MrNARTI сказал:

делал как в шаблоне, но появились ошибки.

Ужас, руки бы варвать :ireful2:

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

2.17. Запрещено флудить, оффтопить, заниматься флеймом. 

Устное предупреждение.

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


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

@Доналдо Фарекелка пишет ошибку.

Цитата

C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(79364) : error 017: undefined symbol "PlayerInfo"
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(79364) : warning 215: expression has no effect
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(79364) : error 001: expected token: ";", but found "]"
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(79364) : error 029: invalid expression, assumed zero
C:\Users\user\Desktop\ìîäèê\gamemodes\merixton.pwn(79364) : fatal error 107: too many error messages on one line

 

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


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

@Доналдо Фарекелка пишет ошибку.

 

У тебя не определена переменная PlayerInfo, замени на ту которая используется в твоём моде, например pInfo, PI, проще говоря информация о игроке

Остальные ошибки идут из-за синтаксиса, на какую конкретно строку кода указывают ошибки?

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


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

@MrNARTI просто PlayerInfo поменяй на то, что используешь в моде. Ну к примеру:
 

if (PlayerInfo[playerid][pAdmin])
if (PI[playerid][pAdmin])
if (pinfo[playerid][pAdmin])

И т.д. Нужно смотреть по твоему моду

По шаблону не смотри. Там вообще все на приколе.
@gais_st все ошибки из-за неизвестного символа "PlayerInfo"
 

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


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

@Доналдо Фарекелка А где его можно найти?

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

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

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

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

    • bogdan@gmail
      От bogdan@gmail
       
      Ищю человека который исправит ошибки готов заплатит
    • dragytop
      От dragytop
      Здравствуйте, тут система у меня есть дрифта она почему-то работает только если на лево дрифтить на право как будто даже системы нету
       
      Вот сама система:
      public OnPlayerUpdate(playerid) // ниже if (!IsPlayerInAnyVehicle(playerid)) return 1; new vehicleid = GetPlayerVehicleID(playerid); new Float:vx, Float:vy, Float:vz, Float:speed, Float:angle, Float:movementAngle, Float:driftAngle; if (GetTickCount() - lastUpdateTime[playerid] < 1000) return 1; lastUpdateTime[playerid] = GetTickCount(); GetVehicleVelocity(vehicleid, vx, vy, vz); speed = floatsqroot(vx * vx + vy * vy) * 180.0; GetVehicleZAngle(vehicleid, angle); movementAngle = atan2(vy, vx); driftAngle = floatabs(angle - movementAngle); if (driftAngle > 180.0) driftAngle = 360.0 - driftAngle; if (speed > 30.0 && driftAngle > 25.0 && driftAngle < 85.0) { new driftPoints = random(101) + 50; DriftScore[playerid] += driftPoints; new text[64]; format(text, sizeof(text), "~w~DRIFT: ~g~%d", DriftScore[playerid]); GameTextForPlayer(playerid, text, 3000, 3); KillTimer(DriftTimer[playerid]); DriftTimer[playerid] = SetTimerEx("EndDrift", 3000, false, "d", playerid); } else { if (DriftScore[playerid] > 0 && DriftTimer[playerid] == 0) { DriftTimer[playerid] = SetTimerEx("EndDrift", 3000, false, "d", playerid); } } return 1; } new DriftScore[MAX_PLAYERS]; // DRIFT SYSTEM //"дрифт очки (ИВ)" new DriftTimer[MAX_PLAYERS]; // DRIFT SYSTEM //"время дрифта" new lastUpdateTime[MAX_PLAYERS]; // DRIFT SYSTEM //"обновление дрифта" forward EndDrift(playerid); public EndDrift(playerid) { if (DriftScore[playerid] > 0) { new money = DriftScore[playerid]; PI[playerid][pCash] += money; GameTextForPlayer(playerid, "", 500, 3); new text[64]; format(text, sizeof(text), "~w~MONEY: ~g~+%d$", money); GameTextForPlayer(playerid, text, 2000, 3); DriftScore[playerid] = 0; DriftTimer[playerid] = 0; } } Буду благодарен!