Difference between revisions of "Ru:DataPacks (SourceMod Scripting)"
MAGNAT2645 (talk | contribs) (Created page with "DataPack - легкий способ добавлять и перемещать различные типы данных в :Category:SourceMod Scripting|SourceMod Scripting...") |
MAGNAT2645 (talk | contribs) |
||
Line 97: | Line 97: | ||
[[Category:SourceMod Scripting]] | [[Category:SourceMod Scripting]] | ||
+ | |||
+ | |||
+ | {{LanguageSwitch}} |
Revision as of 13:23, 22 November 2016
DataPack - легкий способ добавлять и перемещать различные типы данных в SourceMod Scripting. Since some things are not possible in SourcePawn, such as a function consuming a String, DataPacks help us get these Strings and other items where they need to go. Так как некоторые вещи невозможны в 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
Creating a DataPack is very simple; all you need is a Handle to write to. Создать DataPack очень просто; всё, что вам нужно это дескриптор для записи DataPack в него.
Datapack dataPackHandle = new DataPack();
Для более подробной информации по использованию дескрипторов, смотрите Handle API (SourceMod).
Функции DataPack
On you have created your DataPack, you can use a variety of functions to manage the 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);
Warning: This template (and by extension, language format) should not be used, any pages using it should be switched to Template:Languages | |
View this page in: English Russian 简体中文(Simplified Chinese) |