Difference between revisions of "Ru:DataPacks (SourceMod Scripting)"
MAGNAT2645 (talk | contribs) m (→Создание DataPack) |
MAGNAT2645 (talk | contribs) m (→Функции DataPack) |
||
Line 23: | Line 23: | ||
=Функции DataPack= | =Функции DataPack= | ||
− | |||
Когда вы создадите DataPack, вы можете использовать множество функций, чтобы управлять DataPack. | Когда вы создадите DataPack, вы можете использовать множество функций, чтобы управлять DataPack. | ||
Revision as of 07:51, 24 November 2016
DataPack - легкий способ добавлять и перемещать различные типы данных в SourceMod Scripting. Так как некоторые вещи невозможны в SourcePawn, такие как функция потребления строчки, DataPackи помогают нам получать эти строчки и другие вещи, где они нужны.
Contents
Примеры использования DataPack
Синтаксис:
//написание DataPack pack = new DataPack(); pack.WriteCell(23); pack.WriteString("I'm a little teapot."); //чтение pack.Reset(); //возвращает позицию в начало, необходимо для чтения данных. int cellValue = pack.ReadCell(); char buffer[1024]; pack.ReadString(buffer, 1024);
Создание DataPack
Создать DataPack очень просто; всё, что вам нужно это дескриптор для записи DataPack в него.
Datapack dataPackHandle = new DataPack();
Для более подробной информации по использованию дескрипторов, смотрите Handle API (SourceMod).
Функции DataPack
Когда вы создадите DataPack, вы можете использовать множество функций, чтобы управлять DataPack.
WritePackCell
Синтаксис:
native void WritePackCell(Handle pack, int cell);
WritePackFloat
Эта функция может использоваться, чтобы записать дробь в DataPack.
Синтаксис:
native void WritePackFloat(Handle pack, float val);
WritePackString
Эта функция может использоваться, чтобы записать строчку в DataPack.
Синтаксис:
native void WritePackString(Handle pack, const char[] str);
ReadPackCell
Синтаксис:
native any ReadPackCell(Handle pack);
ReadPackFloat
Эта функция может использоваться, чтобы прочитать (получить) дробь из DataPack.
Синтаксис:
native float ReadPackFloat(Handle pack);
ReadPackString
This function can be used to read a String from a DataPack. Эта функция может использоваться, чтобы прочитать (получить) строчку из DataPack.
Синтаксис:
native void ReadPackString(Handle pack, char[] buffer, maxlen);
ResetPack
This function resets your position in the DataPack. Эта функция возвращает позицию DataPack в начало.
Синтаксис:
native void ResetPack(Handle pack, bool clear=false);
GetPackPosition
Эта функция возвращает текущую позицию в DataPack.
Синтаксис:
native int GetPackPosition(Handle pack);
SetPackPosition
Эта функция устанавливает текущую позицию в DataPack.
Синтаксис:
native void SetPackPosition(Handle pack, int position);
Отключение DataPack
Чтобы отключить DataPack, нужно просто закрыть его дескриптор.
Пример:
CloseHandle(dataPackHandle);