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

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 1 из 1
  1. #1
    Аватар для Daniel_Cortez
    new fuck_logic[0] = EOS;

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    1,666
    Репутация:
    2145 ±

    AttachObjectToPlayer

    Описание:
    Прикрепляет к игроку объект, созданный с помощью CreateObject.

    Параметры:
    objectid - ID созданного ранее объекта.
    playerid - ID игрока.
    Float:OffsetX - смещение по оси X.
    Float:OffsetY - смещение по оси Y.
    Float:OffsetZ - смещение по оси Z.
    Float:RotX - поворот по оси X.
    Float:RotY - поворот по оси Y.
    Float:RotZ - поворот по оси Z.

    Возвращаемое значение:
    Функция всегда возвращает 0.

    Примечания:
    • Не путайте эту функцию с SetPlayerAttachedObject.
      В AttachObjectToPlayer используется ID объекта, созданного с помощью CreateObject, в SetPlayerAttachedObject - ID модели объекта.
    • Функция возвращает 0 во всех случаях, поэтому нельзя определить успех её выполнения.
    • По той же причине, что и выше, нельзя сделать с этой функцией оптимизацию возвращаемых значений.
      Рассмотрим такую оптимизацию на примере SendClientMessage.
      Без оптимизации:
      PHP код:
      if(strcmp(cmdtext"/sampletext"true) == 0)
      {
          
      SendClientMessage(playerid, -1"Sample text");
          return 
      1;

      С оптимизацией возвращаемого значения (к тому же, там всего 1 предложение и можно убрать фигурные скобки):
      PHP код:
      if(strcmp(cmdtext"/sampletext"true) == 0)
          return 
      SendClientMessage(playerid, -1"Sample text"); 
      SendClientMessage в любом случае вернёт 1 (игрок подключен, раз это он вызвал команду).
      С функцией AttachObjectToPlayer такой оптимизации проделать не получится, т.к. функция никогда не возвращает 1.

    Пример использования:
    PHP код:
    // Простой редактор прикрепляемых объектов.
    // Используйте /attachtest для создания объекта на вашем персонаже.
    // Чтобы удалить прикреплённый объект, введите /attachtest ещё раз.
    // Для работы требуются sscanf2 и DC_CMD (либо ZCMD).
    CMD:attachtest(playeridparams[])
    // by Daniel_Cortez \\ pro-pawn.ru
        
    if(IsPlayerAdmin(playerid)) // Проверку на админа замените на свою.
            
    return 1;
        static 
    objectid 0;
        if(
    objectid != 0// Если объект уже создан - удалить его и вернуть управление.
        
    {
            
    DestroyObject(objectid);
            
    objectid 0;
            return 
    SendClientMessage(playerid, -1, !"Прикреплённый объект удалён.");
        }
        static const 
    usage_msg[] =
            !
    "Использование: /attachtest [ID модели] "\
            
    "[смещение по осям (X, Y, Z)] [поворот по осям]";
        
    extract params -> new modelidFloat:oxFloat:oyFloat:ozFloat:rx=0.00Float:ry=0.00Float:rz=0.00;else
            return 
    SendClientMessage(playerid, -1usage_msg);
        
    objectid CreateObject(modelid0.000.000.000.000.000.00);
        
    AttachObjectToPlayer(objectidplayeridoxoyozrxryrz);
        return 
    SendClientMessage(playerid, -1, !"Объект прикреплён.");


    Статью подготовил: Daniel_Cortez

    Специально для Pro-Pawn.ru
    Копирование данной статьи на других ресурсах без разрешения автора запрещено.
    Индивидуально в PM и Skype по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
    SA-MP 0.4 is a lie

  2. 4 пользователя(ей) сказали cпасибо:
    $continue$ (25.09.2015)gangzone.ini (25.09.2015)Londlem (25.09.2015)Nurick (26.09.2015)
 

 

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

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

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

Ваши права

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