Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 1 из 3 1 2 3 ПоследняяПоследняя
Показано с 1 по 10 из 23

Тема: Проверки

  1. #1
    Аватар для BaBuIIIkaDrifteR
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±

    Проверки

    Привет всем. Не пойму в чем проблема?

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

    PHP код:
        new str[128], ip[18], dialog_adm;
        
    GetPlayerIp(playeridipsizeof(ip));
        foreach(
    Playeri)
        {
            if(
    Player[i][pAdmin] >= 1){
                
    dialog_adm++;
            }
        }
        if(
    Player[playerid][pAdmin] < && dialog_adm == 0)//Выводим ссобщение всем админам на сервере, если админ.
        
    {
             
    format(strsizeof(str), "Nick: %s[id:%d][ip:%s] присоединился к серверу! Показываем сообщение админу"pNick(playerid),playeridip);
            
    SendAll(-1str)
        }
        else 
    //Если игрок выводим сообщение всем игрокам на сервере.
        
    {
            
    format(strsizeof(str), "Nick: %s присоединился к серверу! Показываем сообщение игроку"pNick(playerid));
            
    SendAll(-1str)
        } 
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

  2. #2
    Аватар для NewGreen
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.09.2014
    Сообщений
    61
    Репутация:
    44 ±
    Цитата Сообщение от BaBuIIIkaDrifteR Посмотреть сообщение
    Привет всем. Не пойму в чем проблема?

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

    PHP код:
        new str[128], ip[18], dialog_adm;
        
    GetPlayerIp(playeridipsizeof(ip));
        foreach(
    Playeri)
        {
            if(
    Player[i][pAdmin] >= 1){
                
    dialog_adm++;
            }
        }
        if(
    Player[playerid][pAdmin] < && dialog_adm == 0)//Выводим ссобщение всем админам на сервере, если админ.
        
    {
             
    format(strsizeof(str), "Nick: %s[id:%d][ip:%s] присоединился к серверу! Показываем сообщение админу"pNick(playerid),playeridip);
            
    SendAll(-1str)
        }
        else 
    //Если игрок выводим сообщение всем игрокам на сервере.
        
    {
            
    format(strsizeof(str), "Nick: %s присоединился к серверу! Показываем сообщение игроку"pNick(playerid));
            
    SendAll(-1str)
        } 
    Чтобы вывести сообщение, не обязательно использовать цикл, не нужна лишняя переменная, пробуйте:
    PHP код:
        new str[128], ip[18];
        
    GetPlayerIp(playeridipsizeof(ip));
        if(
    Player[playerid][pAdmin] > 0)//Выводим ссобщение всем админам на сервере, если админ.
        
    {
             
    format(strsizeof(str), "Nick: %s[id:%d][ip:%s] присоединился к серверу! Показываем сообщение админу"pNick(playerid),playeridip);
            
    SendClientMessage(playerid,-1str);
        }
        else 
    //Если игрок выводим сообщение всем игрокам на сервере.
        
    {
            
    format(strsizeof(str), "Nick: %s присоединился к серверу! Показываем сообщение игроку"pNick(playerid));
            
    SendClientMessage(playerid,-1str);
        } 
    Последний раз редактировалось NewGreen; 13.03.2015 в 15:08.

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

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Цитата Сообщение от NewGreen Посмотреть сообщение
    Чтобы вывести сообщение, не обязательно использовать цикл, не нужна лишняя переменная, пробуйте:
    PHP код:
        new str[128], ip[18];
        
    GetPlayerIp(playeridipsizeof(ip));
        if(
    Player[playerid][pAdmin] > 0)//Выводим ссобщение всем админам на сервере, если админ.
        
    {
             
    format(strsizeof(str), "Nick: %s[id:%d][ip:%s] присоединился к серверу! Показываем сообщение админу"pNick(playerid),playeridip);
            
    SendClientMessage(playerid,-1str);
        }
        else 
    //Если игрок выводим сообщение всем игрокам на сервере.
        
    {
            
    format(strsizeof(str), "Nick: %s присоединился к серверу! Показываем сообщение игроку"pNick(playerid));
            
    SendClientMessage(playerid,-1str);
        } 
    Цикл я использовал для использования перебора всех админов в сети.
    Ваш код пробовал тоже не работает ровно.
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

  5. #4
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    А если так:
    PHP код:
    #define MAX_PLAYER_IP 16 // После инклуда a_samp, можно вообще в инклуд a_samp спрятать, найти MAX_PLAYER_NAME и поставить ниже
    new string_messenge_connect[(68 + (MAX_PLAYER_IP 2) + MAX_PLAYER_NAME 2)], ip_player_connect[MAX_PLAYER_IP];
    GetPlayerIp(playeridip_player_connectsizeof(ip_player_connect));
    if(
    Player[playerid][pAdmin] != 0)
    {
        foreach(
    Playeri)
        {
            if(
    Player[i][pAdmin] == || == playerid /* Не обезательно если надо что бы игроку который конектиться показывало сообщение то убери i == playerid */) continue;
            
    format(string_messenge_connectsizeof(string_messenge_connect), "Nick: %s[id:%d][ip:%d] присоединился к серверу! Показываем сообщение админу"pNick(playerid),playeridip);
            
    SendClientMessage(i, -1string_messenge_connect);
        }
         break;
    }

    else 
    //Если игрок выводим сообщение всем игрокам на сервере.
    {
        
    format(string_messenge_connectstrsizeof(string_messenge_connect), "Nick: %s присоединился к серверу! Показываем сообщение игроку"pNick(playerid));
        
    SendClientMessageToAll(-1string_messenge_connect);

    Последний раз редактировалось $continue$; 14.03.2015 в 00:14.

  6. #5
    Аватар для BaBuIIIkaDrifteR
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Цитата Сообщение от Bublik_Public Посмотреть сообщение
    А если так:
    PHP код:
    #define MAX_PLAYER_IP 16 // После инклуда a_samp, можно вообще в инклуд a_samp спрятать, найти MAX_PLAYER_NAME и поставить ниже
    new string_messenge_connect[(68 + (MAX_PLAYER_IP 2) + MAX_PLAYER_NAME 2)], ip_player_connect[MAX_PLAYER_IP];
    GetPlayerIp(playeridip_player_connectsizeof(ip_player_connect));
    if(
    Player[playerid][pAdmin] != 0)
    {
        foreach(
    Playeri)
        {
            if(
    Player[i][pAdmin] == || == playerid /* Не обезательно если надо что бы игроку который конектиться показывало сообщение то убери i == playerid */) continue;
            
    format(string_messenge_connectsizeof(string_messenge_connect), "Nick: %s[id:%d][ip:%d] присоединился к серверу! Показываем сообщение админу"pNick(playerid),playeridip);
            
    SendClientMessage(i, -1string_messenge_connect);
        }
         break;
    }

    else 
    //Если игрок выводим сообщение всем игрокам на сервере.
    {
        
    format(string_messenge_connectstrsizeof(string_messenge_connect), "Nick: %s присоединился к серверу! Показываем сообщение игроку"pNick(playerid));
        
    SendClientMessageToAll(-1string_messenge_connect);

    Захожу на сервер выводит сообщения только для игрока. Э "Nick: %s присоединился к серверу! Показываем сообщение игроку Э
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

  7. #6
    Аватар для $continue$
    Пользователь

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

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Очень уже интересно, как вы собрались Ip-адрес переводить из строки в число в спецификаторе.

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

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Цитата Сообщение от Bublik_Public Посмотреть сообщение
    Заскринь, код построен верно, разве что break не обязательно..
    Конектюсь к серверу как игрок выдает сообщения для игрока, конектюсь как админ выдает сообщение для игрока.
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

  10. #9
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Цитата Сообщение от BaBuIIIkaDrifteR Посмотреть сообщение
    Конектюсь к серверу как игрок выдает сообщения для игрока, конектюсь как админ выдает сообщение для игрока.
    Выше данного кода поставь:
    printf("Ник подключившесего игрока: %s || Уровень администраторских прав: %d || IP адрес: %d, проставь переменные, с телефона ужасно не удобно);

  11. #10
    Аватар для BaBuIIIkaDrifteR
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Цитата Сообщение от Bublik_Public Посмотреть сообщение
    Выше данного кода поставь:
    printf("Ник подключившесего игрока: %s || Уровень администраторских прав: %d || IP адрес: %d, проставь переменные, с телефона ужасно не удобно);
    Хотя у меня админка была
    PHP код:
    [00:34:26Number of vehicle models14
    [00:35:00Incoming connection127.0.0.1:64161 id0
    [00:35:00] [joineXtaz has joined the server (0:127.0.0.1)
    [
    00:35:00
    [
    00:35:00Ban list
    [
    00:35:00] --------
    [
    00:35:00]  Loadedsamp.ban
    [00:35:00
    [
    00:35:00Ник подключившесего игрокаeXtaz || Уровень администраторских прав|| IP адрес49
    [00:35:12] [parteXtaz has left the server (0:1
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

 

 
Страница 1 из 3 1 2 3 ПоследняяПоследняя

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

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

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

Ваши права

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