Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 9 из 9
  1. #1
    Аватар для BadPawn
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.01.2016
    Адрес
    Приморье, Спасск-Дальний
    Сообщений
    165
    Репутация:
    7 ±

    Строка strcat

    здрасти. давненько ничего не писал. )))


    PHP код:
    CMD:admins(playerid)
    {
        static const 
    str[] = "Администратор ";

        new 
    buff[sizeof str MAX_PLAYER_NAME], count 1;

        foreach(new 
    iPlayer)
        {
            if(
    >= aInfo[i][aAdmin] <= 5)
            {
                
    SendClientMessage(playerid, -1"* Админы онлайн:");
                
    strcat(buffstr);
                
    strcat(buffpInfo[i][pName]);
                
    SendClientMessage(playerid, -1buff);
            }
            else return 
    SendClientMessage(playerid, -1"* Нет админов онлайн.");
        }
        return 
    1;

    функция strcat вставляет текст в окончание строки, а можно поместить его в начало каким-нибудь неизвестным мне образом?

    До 'Администратор'.

  2. #2
    Аватар для $continue$
    Заблокирован

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,466
    Репутация:
    265 ±
    Используйте strins

  3. #3
    Аватар для BadPawn
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.01.2016
    Адрес
    Приморье, Спасск-Дальний
    Сообщений
    165
    Репутация:
    7 ±
    Так.

    Далее. До 'Администратор' будут порядковые числа, зависящие от кол-ва админов онлайн. Первое значение 1, далее по сканированию +1. Создал глобальную переменную с значением 1, но strins используется так:
    PHP код:
    string(1var, "текст"0); 
    у меня же,
    PHP код:
    new count 1
    в str нужно в начало занести значение переменной count. можно как-то обойтись без формата строки?

  4. #4
    Аватар для Иван Бубнов
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.12.2015
    Сообщений
    161
    Репутация:
    8 ±
    PHP код:
    COMMAND:admins(playeridparams[])
    {
        new 
            
    buff[17 + (-MAX_PLAYER_NAME) + 1], 
            
    count;

        foreach(new 
    iPlayer)
        {
            if(
    aInfo[i][aAdmin] == 0) continue;
            
    count ++;
            if(
    count == 1)
                
    SendClientMessage(playerid, -1"* Админы онлайн:");
            
    buff "Администратор ";
            
    strcat(buffpInfo[i][pName]);
        }

        if(
    count == 0)
            
    SendClientMessage(playerid, -1"Нет админов в сети!");

        return 
    1;


  5. Пользователь сказал cпасибо:
    BadPawn (15.04.2016)
  6. #5
    Аватар для BadPawn
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.01.2016
    Адрес
    Приморье, Спасск-Дальний
    Сообщений
    165
    Репутация:
    7 ±
    не пацан, ты не вкурил. :)

    count - количество найденных админов из онлайновых, по коду. с энглишем не очень, поэтому не страшно.
    нашло 3 админа, к примеру, значит:

    1. Администратор Вася Пупкин
    2. Администратор Дима Грач
    3. Администратор Енот Орехович

    В конец строки добавлю имя с помощью strcat, все ровно. Как записать полученное число с переменной count в начало строки, тобишь у первого будет вначале Единица, у второго Двойка и у третьего Тройка?

  7. #6
    Аватар для Иван Бубнов
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.12.2015
    Сообщений
    161
    Репутация:
    8 ±
    format(str, sizeof(str), "%i. Администратор %s [ID: %d] [AFK: Нет]", count, pInfo[i][pName], i);

  8. #7
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Сообщений
    1,360
    Репутация:
    768 ±
    PHP код:
    CMD:admins(playeridparams[]) {
        new
            
    buffer[128],
            
    count;

        
    SendClientMessage(playerid, -1"* Админы онлайн:");
        foreach (new 
    Player) {
            if (
    <= aInfo[i][aAdmin] <= 5) {
                
    format(buffersizeof(buffer), "%i. Администратор %s", ++countpInfo[i][pName]);
                
    SendClientMessage(playerid, -1buffer);
            }
        }
        if (
    == count) {
            
    SendClientMessage(playerid, -1"* Нет админов онлайн.");
        }
        return 
    1;

    Последний раз редактировалось L0ndl3m; 14.04.2016 в 20:26.

  9. 2 пользователя(ей) сказали cпасибо:
    BadPawn (15.04.2016)VVWVV (14.04.2016)
  10. #8
    Аватар для BadPawn
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.01.2016
    Адрес
    Приморье, Спасск-Дальний
    Сообщений
    165
    Репутация:
    7 ±
    Всем спасибо.

    С помощью форматирования ясно дело как делается, а других способов не знаю.

  11. #9
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    4,287
    Репутация:
    1610 ±
    PHP код:
    new string[30] = "Администратор";
    strins(string"1. "0);
    strcat(string" Вася Пупкин"); 
    Но это полное извращение
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •