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

Тема: IsSeatOccupied

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

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

    IsSeatOccupied

    Введение:
    Функция для проверки занято ли сиденье.

    PHP код:
    IsSeatOccupied(vehicleidseatid)
    {
            if (!
    GetVehicleModel(vehicleid))
                    return 
    0;
     
            foreach(
    Player,i)//for(new p = GetMaxPlayers(), i; i != p; --i)
            
    {
                if (
    IsPlayerInVehicle(ivehicleid) && GetPlayerVehicleSeat(i) == seatid
                    return 
    1;
            }
            return 
    0;

    Автор: Emmet_
    Автор статьи: Salvador
    Специально для: Pro-Pawn.Ru


    Копирование данной статьи без разрешения автора запрещено!
    Последний раз редактировалось Salvacore; 16.08.2014 в 21:58.

  2. Пользователь сказал cпасибо:
    Unreal (12.11.2014)
  3. #2
    Аватар для MR_BEN
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.01.2014
    Сообщений
    110
    Репутация:
    29 ±
    не все foreach пользуются

    PHP код:
    IsSeatOccupied(vehicleidseatid)
    {

            if (!
    GetVehicleModel(vehicleid))
                    return 
    0;
     
            for(new 
    GetMaxPlayers(), i!= p; --i)
            {
                if (
    IsPlayerInVehicle(ivehicleid) && GetPlayerVehicleSeat(i) == seatid
                    return 
    1;
            }
            return 
    0;

    Последний раз редактировалось MR_BEN; 27.09.2014 в 18:55.

  4. #3
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2589 ±
    Цитата Сообщение от MR_BEN Посмотреть сообщение
    не все foreach пользуются

    PHP код:
    IsSeatOccupied(vehicleidseatid)
    {
            new 
                 
    GetMaxPlayers();
            if (!
    GetVehicleModel(vehicleid))
                    return 
    0;
     
            do
            {
                
    i--;
                if (
    IsPlayerInVehicle(ivehicleid) && GetPlayerVehicleSeat(i) == seatid
                    return 
    1;
            }
            while(
    i);
            return 
    0;

    Если машины не существует, вызов GetMaxPlayers пройдёт впустую. В остальном, пожалуй, поддержу инициативу.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

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

    Статус
    Оффлайн
    Регистрация
    10.01.2014
    Сообщений
    110
    Репутация:
    29 ±
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Если машины не существует, вызов GetMaxPlayers пройдёт впустую. В остальном, пожалуй, поддержу инициативу.
    Обновил пост выше. Думаю, так будет лучше.

  6. #5
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Тогда уж так
    PHP код:
    IsSeatOccupied(vehicleidseatid)
    {
        if(!
    GetVehicleModel(vehicleid)) return 0;
        for(new 
    GetMaxPlayers(); != -1; --p)
        {
            if(
    IsPlayerInVehicle(pvehicleid) && GetPlayerVehicleSeat(p) == seatid) return 1;
        }
        return 
    0;

    И да, SA-MP не взорвётся, если вызов функций будет для несуществующего игрока? Я бы перестраховался, ибо SA-MP же...
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

  7. #6
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2589 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    SA-MP не взорвётся, если вызов функций будет для несуществующего игрока?
    Ну на GetVehicleModel по ID несуществующего транспорта (см. код выше) не взрывается же.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  8. #7
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Ну на GetVehicleModel по ID несуществующего транспорта (см. код выше) не взрывается же.
    Ну просто раньше то ли SendClientMessage Для несуществующего игрока вызывала краш сервера, то ли что-то ещё. Не помню точно. Сейчас, возможно, так же дела обстоят
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

 

 

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

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

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

Ваши права

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