Добро пожаловать на 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,487
    Репутация:
    276 ±
    Используйте strins
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

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

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

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

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

    Статус
    Оффлайн
    Регистрация
    22.12.2015
    Сообщений
    157
    Репутация:
    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;


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

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

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

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

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

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

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

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    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.

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

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

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

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

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

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

    Steve Pavlina

 

 

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

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

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

Ваши права

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