Текущая версия SA-MP: 0.3.7


IP: 77.220.180.96:7777
  Новые сообщения · Поиск
  • Страница 1 из 1
  • 1
Модератор форума: KaTacTpOqpa  
Инклуд Dini
Polcar Сообщение # 1  | 17:20:17
Руководитель проекта SM
Администраторы
Сообщений: 788
Репутация: 323
Хочу предложить вам информацию о Dini.inc, писал это не я, но новость думаю некоторым, кто хочет о дини узнать поможет.

Библиотека Dini создана для сохранения данных в файл.

Основные функции 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);  

--------------------------------------------------------------------------------------------------
dini_FloatSet

Записывает в файл переменную величину

Параметры:
(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 ©




Demetrius Сообщение # 2  | 21:56:21
VIP-пользователи
Сообщений: 1192
Репутация: 158
старый добрый Dini, сейчас без него, наверное, ни один мод нельзя представить)

Sweet >>> Armin >>> Demetrius

SA:MP >> MTA:SA >> IRL
BJIADOKC Сообщение # 3  | 10:03:21
Скриптеры
Сообщений: 601
Репутация: 161
а мне кажется lethaldudb2 лучше)

тут больше не сижу... открыл свой проект
Atikinn Сообщение # 4  | 22:02:04
Пользователи
Сообщений: 2
Репутация: 0
BJIADOKC, согласен !!!
Norman Сообщение # 5  | 11:38:00
Пользователи
Сообщений: 7
Репутация: 0
Спасибо за урок. Очень хороший. Немного разобрался. Но как всегда есть одна проблемка. Сделал регистрацию через этот инклуид. Получилось наоборот, ввожу правильный пасс выкидыывает и пишет что не правильный, а если вообще не воожу ничего то норм заходит. Может кто подскажет в чем проблема? (регистрация в диалогах.)
BJIADOKC Сообщение # 6  | 13:21:27
Скриптеры
Сообщений: 601
Репутация: 161
public OnDialogResponse:
Code

if(dialogid == ...) // тут поставь ид диалога
{
if(response == 1)
{
new tmpstr[256], PName[24], temp[256]; //берем путь к файлу, имя и будущий пароль из файла
GetPlayerName(playerid,PName,24); // берем имя
format(tmpstr,256,"*путь к папке аккаунтов*%s.ini,PName); // здесь укажи путь к папке с аккаунтами
if(!dini_Exists(tmpstr)) return 1; // если файла с аккаунтом не существует, то ничего не происходит
temp = dini_Get(tmpstr,"Password"); // берем пароль из файла аккаунта
if(!strcmp(temp,inputtext,false)) // сопоставляем пароль из файла с введенным
{
тут действия при успешном логине
}
else
{
тут действия при неправильном логине
}
}
else
{
тут что произойдет при отказе от логина (нажатии отмена)
}
}

ну вот...
by BJIADOKC


тут больше не сижу... открыл свой проект


Редактировано BJIADOKC - Среда, 27 Апр 2011, 13:22:17
Jin Сообщение # 7  | 13:51:03
Забаненые
Сообщений: 84
Репутация: -23
А как сделать чтоб в банке деньги сохр. был но шли как файл
Demetrius Сообщение # 8  | 16:44:03
VIP-пользователи
Сообщений: 1192
Репутация: 158
mxINI 4ever
И быстрее, и написана русским smile


Sweet >>> Armin >>> Demetrius

SA:MP >> MTA:SA >> IRL
BJIADOKC Сообщение # 9  | 17:24:35
Скриптеры
Сообщений: 601
Репутация: 161
Quote (Armin)
русским

MX_Master казах


тут больше не сижу... открыл свой проект
XocTeP Сообщение # 10  | 17:16:51
Пользователи
Сообщений: 122
Репутация: 0
Помогло, пасиб ) cool

Тут больше не сижу. Открыл свой проект.
SoNik)) Сообщение # 11  | 13:06:39
Редактор
Сообщений: 131
Репутация: 137
Цитата (XocTeP)
Помогло, пасиб )

Не уверен я, что ты этим воспользовался
NeaKTIV Сообщение # 12  | 22:15:48
Пользователи
Сообщений: 10
Репутация: 0
а мне кажется a_sampdb и mysql лучше)

[img]http://gta-fspoint.my1.ru/rineview1.png[/img]
[JIuC]eH[oK] Сообщение # 13  | 13:14:21
Модераторы
Сообщений: 972
Репутация: 414
[off]
Цитата NeaKTIV ()
а мне кажется a_sampdb и mysql лучше)

А мне кажется, что кто-то набивает посты.


Администратор Универсала.
По вопросам обращайтесь ко мне в
Личку.
  • Страница 1 из 1
  • 1
Поиск: