Библиотека Dini создана для сохранения данных в файл. Скачать последнюю версию Dini.inc v. 1.5.1 можно на сайте в разделе инклуды Но для работы с Dini нужно скачать библиотеку DUtils. Скачать последнюю версию DUtils.inc v. 1.10 можно на сайте в разделе инклуды Все эти три файла нужно поместить в директорию: */samp-server/pawno/includes И в своем скрипте добавить две строчки: #include <Dini> #include <DUtils> Основные функции Dini.inc dini_Exists Параметры: (filename[]) filename[] - имя файла для проверки Если файл не существует, то команда возвращается Пример: Code dini_Exists("logs.txt"); -------------------------------------------------------------------------------------------------- dini_Remove Эта команда удаляет файл с определенным именем Параметры: (filename[]) filename[] - имя файла, которые будет удален Пример: Code dini_Remove("logs.txt"); -------------------------------------------------------------------------------------------------- dini_CreateЭта команда создает файл с определенным названием Параметры: (filename[]) filename[] - имя файла, который будет создан Пример: Code dini_Create("logs.txt"); -------------------------------------------------------------------------------------------------- dini_Set Записывает в определенный файл текст в строчку с определенным названием. Параметры: (filename[],key[],value[]) filename[] - имя файла, который будет открыт key[] - обозначение сохраняемых данных value[] - сохраняемые данные (текст) Пример: Code dini_Set("logs.txt","Servername","A SA:MP Server"); -------------------------------------------------------------------------------------------------- dini_IntSet Записывает в определенный файл число в строчку с определенным названием. Параметры: (filename[],key[],value) filename[] - имя файла, который будет открыт key[] - обозначение сохраняемых данных value - сохраняемые данные (число) Пример: Code dini_Set("logs.txt","Servermaxplayers",50); -------------------------------------------------------------------------------------------------- dini_BoolSet Устанавливает "истина" (true) или "ложь" (false) в файл с определенным именем и в строчку с определенным названием. Параметры: (filename[],key[],value) filename[] - файл, который будет открыт key[] - обозначение сохраняемых данных value - Установить для результатов "истина" (true) или "ложь" (false). Пример: Code dini_BoolSet("logs.txt","Serveractive",true); -------------------------------------------------------------------------------------------------- [/b] Записывает в файл переменную величину Параметры: (filename[],key[],Float:value) filename[] - файл, который будет открыт key[] - обозначение сохраняемых данных Float:value - переменная величина Пример: Code dini_FloatSet("logs.txt","PlayerposX",50.124); -------------------------------------------------------------------------------------------------- dini_Isset Проверяет установлено ли обозначение строки или нет Параметры: (filename[],key[]) filename[] - файл, в который будет задействован key[] - обозначение строки Пример: Code dini_Isset("logs.txt","money"); -------------------------------------------------------------------------------------------------- dini_Get Берет значение из определенного файла и строки. Параметры: (filename[],key[]) filename[] - файл, в который будет задействован key[] - обозначение строки, из которой мы берем значение Пример: Code dini_Get("spawn.txt","money"); -------------------------------------------------------------------------------------------------- dini_Unset Удаляет значение из определенного файла и строки. Параметры: (filename[],key[]) filename[] - файл, который будет задействован key[] - обозначение строки, в которой вы удаляем значение Пример: Code dini_Unset("properties.txt","owner"); -------------------------------------------------------------------------------------------------- Float:dini_Float Берет переменную из определенного файла и определенной строки Параметры: (filename[],key[]) filename[] - файл, который будет задействован key[] - обозначение строки, в которой проверяем переменную Пример: Code dini_Float("logs.txt","height"); -------------------------------------------------------------------------------------------------- dini_Int Берет число из определенного файла и определенной строки Параметры: (filename[],key[]) filename[] - файл, который будет задействован key[] - обозначение строки, в которой проверяем число Пример: Code dini_Int("logs.txt","maxplayers"); -------------------------------------------------------------------------------------------------- dini_Bool Берет "истину" (true) или "ложь" (false) из определенного файла и определенной строки Параметры: (filename[],key[]) filename[] - файл, который будет задействован key[] - обозначение строки, в которой проверяем "истина" (true) или "ложь" (false) Пример: Code dini_Bool("acertainfile.txt","maxplayers"); ================================================== ========= Все эти команды можно использовать в любых функциях. Вот например: Code new PlayerCount; public OnPlayerConnect(playerid) { SendClientMessage(playerid, 0x00FF00AA, "Wellcome!"); PlayerCount++; if (!dini_Exists("OnlinePlayers.txt")) { dini_Create("OnlinePlayers.txt"); return 1; } else { printf("Server: There are %d players", PlayerCount); dini_IntSet("OnlinePlayers.txt","Players",PlayerCount); return 1; } return 0; } При заходе игрока в консоли сервера будет писаться количество онлайн игроков, и количество онлайн игроков будет записываеть в файл OnlinePlayers.txt Естественно можно добавить запись даты, ников игроков, их ID итд. Да кстати если будете использовать этот код, то добавьте еще: Code public OnPlayerDisconnect(playerid) { PlayerCount--; if (!dini_Exists("OnlinePlayers.txt")) { dini_Create("OnlinePlayers.txt"); return 1; } else { printf("Server: There are %d players", PlayerCount); dini_IntSet("OnlinePlayers.txt","Players",PlayerCount); return 1; } return 0; } By Corvus ©
Not we bad speak - you bad understand... ©KaZaNOVa У каждого девелопера свои петухи в голове ©OKStyle™
|