Question

Всем салам алейкум, хотел сделать чтобы, в admins были видны префиксы, но если их нет отображалось статичное название, написал такой легкий код, выдает ошибку 002
Ошибка

D:\jobs\archive\gamemodes\new.pwn(54968) : error 002: only a single statement (or expression) can follow each "case"
D:\jobs\archive\gamemodes\new.pwn(54968) : warning 215: expression has no effect

строка где выходит ошибка

format(str, sizeof(str), ""W"%i\t%s\t%s\t%d%s\n",i,player_name[i],Admin,PlayerInfo[i][pAdmin],TI[i][tAFK]>=3?("{ffa800} [AFK]"):("")),strcat(string,str);

весь код

CMD:admins(playerid) {
     if(PlayerInfo[playerid][pAdmin] < 1 && !PlayerInfo[playerid][pVips]) return true;
    new countleader = 0;
    new string[2000],str[156];
    new Admin[128];
    string = "ID\tНик\tДолжность\tУровень\n";
    foreach(new i:Player) {
        if(!IsPlayerConnected(i) || (!TI[i][tLogin]) || (PlayerInfo[i][pAdmin] <= 0)) continue;
        switch(PlayerInfo[playerid][pAdmin]) {
        case 1: Admin = "Младший Модератор";
        case 2: Admin = "Модератор";
        case 3: Admin = "Старший Модератор";
        case 4:
        {

            if(PlayerInfo[playerid][pMyPrefix])
            {
                format(Admin, sizeof Admin, "%s", PlayerInfo[playerid][pMyPrefix]);
            }
            else format(Admin, sizeof Admin, "Младший Администратор");
        }
        case 5:
        {

            if(PlayerInfo[playerid][pMyPrefix])
            {
                format(Admin, sizeof Admin, "%s", PlayerInfo[playerid][pMyPrefix]);
            }
            else format(Admin, sizeof Admin, "Администратор");
        }
        case 6:
        {

            if(PlayerInfo[playerid][pMyPrefix])
            {
                format(Admin, sizeof Admin, "%s", PlayerInfo[playerid][pMyPrefix]);
            }
            else format(Admin, sizeof Admin, "Старший Администратор");
        }
        case 7:
        {

            if(PlayerInfo[playerid][pMyPrefix])
            {
                format(Admin, sizeof Admin, "%s", PlayerInfo[playerid][pMyPrefix]);
            }
            else format(Admin, sizeof Admin, "Администратор 7 уровня");
        }
        format(str, sizeof(str), ""W"%i\t%s\t%s\t%d%s\n",i,player_name[i],Admin,PlayerInfo[i][pAdmin],TI[i][tAFK]>=3?("{ffa800} [AFK]"):("")),strcat(string,str);
        countleader++;
    }
    if(countleader > 0) {
        D(playerid, DIALOG_NONE, DSTH, ""P"Администрация",string, "Закрыть""");
        new str_adm[128];
        format(str_adm, sizeof(str_adm), "В сети "W"%i"G" администратор(ов)", countleader);
        SendOk(playerid,str_adm);
    }
    else D(playerid, DIALOG_NONE, DSM, ""P"Администрация",""W"Нет администраторов в сети""Закрыть""");
    return 1;
}

 

Share this post


Link to post

1 answer to this question

  • 0

@Атанияз, вырезка из документации:

Цитата

The body of a switch statement may have an arbitrary number of case: labels, as long as the values of all constant-expressions are unique (after conversions/promotions). At most one default: label may be present (although nested switch statements may use their own default: labels or have case: labels whose constants are identical to the ones used in the enclosing switch).


Таким образом, в теле оператора switch могут быть только ключевые слова case и default. Об этом же написано в ошибке 002:

Цитата

error 002: only a single statement (or expression) can follow each "case"

 

У вас же в теле оператора switch также присутствует следующее:

Цитата

format(str, sizeof(str), ""W"%i\t%s\t%s\t%d%s\n",i,player_name[i],Admin,PlayerInfo[i][pAdmin],TI[i][tAFK]>=3?("{ffa800} [AFK]"):("")),strcat(string,str);
countleader++;

 

 

Share this post


Link to post
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • angel_sinvays
      By angel_sinvays
      Приветствую! Меня зовут Артём, мне 19 лет, и я являюсь основателем и ведущим специалистом студии Sinvays. Уже семь лет я работаю в PAWN, и за это время принял участие в множестве проектов. Моя цель – создавать качественные и уникальные решения для вашего игрового проекта. Обратите внимание, чтобы сделать заказ необходимо написать мне в личные сообщения либо делать это через студию.
      Ознакомиться с полным спектром услуг можно у меня в личных сообщениях либо через бота в студии.

      Список услуг которые я предоставляю:
       
      Написание регистрации на mysql [DIALOG / TextDraw] — от 350 рублей.
      Написание авторизации на mysql [DIALOG / TextDraw] — от 350 рублей.
      Написание системы — от 200 рублей (в зависимости от сложности).
      Рисовка TextDraw — от 50 рублей (зависит от потребностей)
      Исправление багов в игровом моде — от 100 рублей (зависит от количества и сложности)
      Переделка любого мода под ваши интересы — от 150 рублей (зависит от потребностей)
       
      Пожалуйста, обратите внимание:

      Для начала сотрудничества мне необходимо четкое техническое задание и ваше желание работать совместно.

      Услуги предоставляются по 100% оплате!

      Моё портфолио: https://vk.com/topic-180751181_50413848
      Мои отзывы: https://vk.com/topic-180751181_50413975 
    • gazilius
      By gazilius
      Здравствуйте, ищу скриптера
      платформа CRMP
      Ищу человека который будет потихоньку писать системы для мода с нуля
      Оплата сдельная
       
      тз
      mysql
      1. Система регистрации и авторизации
      Выбор спавна:
      Лыткарино
      Игроки пока не поздороваются не видят имени друг друга
       
      2. Работы
      Автобусник - катаешься по всей карте и за остановку получаешь 500 игровой валюты
      Механик - берет вызов по всей области и после ремонта получает свои 500 игровой валюты и за заправку за каждый литр еще 10 игровой валюты
      Таксист - принимает заказ где человек ставит маркер куда ему нужно, после чего таксист если оказывается на метки и получает свою оплату - км 50 игровой валюты
      деньги списываются с того кто заказал такси
       
      Автобус парк - Лыткарино, Батырево
      База механиков - Арзамас, Южный
      Такси компаний - Арзамас, Южный

      Жду ваших цен и прайсов
      тг @ormbet
    • egoryaz
      By egoryaz
      хочу сделать свой логотип для проекта на textdraw много видео посмотрел даже использовал tdeditor но не могу его запустить подскажите как сделать свой логотип