Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 6 из 6
  1. #1
    Аватар для Mi-Zaft
    Пользователь

    Статус
    Оффлайн
    Регистрация
    26.10.2013
    Сообщений
    11
    Репутация:
    0 ±

    Проверка на координаты.

    Всем привет!)
    Вообщем хочу сделать команду, но она должна работать на определенных точках карты.
    Я не хочу делать проверку в самой команде, поэтому хочу сделать проверку в отдельном паблике.

    В каком то моде видел такую тему

    IsACop(playerid);
    Если скин копа, то проверка проходит.

    Так вот объясните, как сделать такую проверку на координаты.
    Заранее спасибо)

  2. #2
    Аватар для Londlem
    Модератор

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Сообщений
    1,360
    Репутация:
    767 ±
    Допустим есть 3 координаты, в начале мода создаём массив:
    PHP код:
    static const FloatSpecialCoords[][] =
    {
        {
    0.00.00.0}, // Первая координата
        
    {0.00.00.0}, // Вторая координата
        
    {0.00.00.0// Третья координата
    }; 
    Далее делаем сам паблик:
    PHP код:
    IsPlayerInSpecialCoords(const playerid)
    {
        new 
    sizeof(SpecialCoords);
        do
        {
            --
    i;
            if(
    IsPlayerInRangeOfPoint(playerid10.0SpecialCoords[i][0], SpecialCoords[i][1], SpecialCoords[i][2]))
                return 
    1// Хотя бы находится у одной из координат (10 метров)
        
    }
        while(
    i);
        return 
    0// Не находится ни на одной из координат 

    Функция возвращает 1, если игрок находится хотя бы у одной из координат, указанной в массиве, 0 если не находится ни на одной из координат указанной в массиве.

    Вот сама проверка:
    PHP код:
    if(IsPlayerInSpecialCoords(playerid) == 1)
        
    SendClientMessage(playerid, -1"Вы находитесь на одной из координат.");
    else
        
    SendClientMessage(playerid, -1"Вы не находитесь ни на одной из координат."); 
    Последний раз редактировалось Londlem; 26.04.2014 в 20:35.

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

    Статус
    Оффлайн
    Регистрация
    26.10.2013
    Сообщений
    11
    Репутация:
    0 ±
    Спасибо, а как допустим в команду засунуть эту проверку?
    if(IsPlayerInSpecialCoords(const playerid) == true)
    {
    }
    Или как?

  4. #4
    Аватар для Londlem
    Модератор

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Сообщений
    1,360
    Репутация:
    767 ±
    Цитата Сообщение от Mi-Zaft Посмотреть сообщение
    Спасибо, а как допустим в команду засунуть эту проверку?
    if(IsPlayerInSpecialCoords(const playerid) == true)
    {
    }
    Или как?
    Цитата Сообщение от Londlem Посмотреть сообщение
    Вот сама проверка:
    PHP код:
    if(IsPlayerInSpecialCoords(playerid) == 1)
        
    SendClientMessage(playerid, -1"Вы находитесь на одной из координат.");
    else
        
    SendClientMessage(playerid, -1"Вы не находитесь ни на одной из координат."); 
    Если не одна строчка кода:
    PHP код:
    if(IsPlayerInSpecialCoords(playerid) == 1)
    {
        
    SendClientMessage(playerid, -1"Вы находитесь на одной из координат.");
        
    // Остальной код


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

    Статус
    Оффлайн
    Регистрация
    26.10.2013
    Сообщений
    11
    Репутация:
    0 ±
    Спасибо большое.
    Закрыто.

  7. #6
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,282
    Репутация:
    417 ±
    Close.

 

 

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

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

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

Ваши права

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