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

Тема: getproperty

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

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

    getproperty

    Описание:
    Получает из виртуальной машины значение указанного свойства.

    Параметры:
    id - ID виртуальной машины (по умолчанию 0). Желательно пропускать этот параметр (см. пример ниже) либо оставлять его равным нулю, т.к. в SA:MP используется всего одна виртуальная машина.
    name - название свойства (используется только если значение свойства не является строковым).
    value - уникальный идентификатор свойства. Обычно это хеш для хранения строкового значения, для свойств с целочисленными значениями этот параметр не нужен.
    string[] - переменная для сохранения в ней значения строкового типа (используется, если значение свойства имеет строковый тип).

    Возвращаемое значение:
    Значение свойства или 0, если указанного свойства не существует. Кроме того, если в свойстве хранится значение строкового типа, функция возвращает это значение через массив string.

    Примечения:
    • При получении значений свойств строкового типа размер строковой переменной не указывается, из-за чего может произойти выход за пределы массива.
      Внимательно относитесь к вопросу задания размеров строковой переменной перед получением в неё значения.
    • Строки возвращаются в упакованном виде. Некоторые функции, такие как format и printf, неправильно обрабатывают упакованные строки, поэтому их следует предварительно распаковать с помощью функции strunpack.


    Пример использования:
    Получение значения свойства целочисленного типа:
    1. // создаём свойство "my_int1" со целочисленным значением 23
    2. setproperty(_, "my_int1", 23);
    3. // получаем значение свойства и выводим его на экран
    4. printf("my_int1 = %d", getproperty(_, "my_int1", _, _));

    Получение значения свойства строкового типа (для получения хеша имени свойства используется y_stringhash):
    1. // создаём свойство "my_string1" со строковым значением "Sample text"
    2. new hash = YHash("my_string1", true, hash_fnv1);
    3. setproperty(_, _, hash, "Sample text");
    4. // получаем значение свойства и выводим его на экран
    5. new text[32];
    6. getproperty(_, _, hash, text);
    7. print(text);
    См. также:


    Статью подготовил: Daniel_Cortez
    Специально для Pro-Pawn.ru
    Копирование данной статьи на других ресурсах без разрешения автора запрещено!
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  2. 3 пользователя(ей) сказали cпасибо:
    L0ndl3m (22.05.2014) Salvacore (22.05.2014)
 

 

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

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

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

Метки этой темы

Ваши права

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