18:54
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: Dima-kun  
Форум SAMP о мультиплеерах для GTA. »   » Wiki-Samp-Rus » Всё о чтении/сохранении в файл (Напишите статью для чайников)
Всё о чтении/сохранении в файл
SanSayДата: Понедельник, 25.08.2008, 19:46 | Сообщение # 16
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
XAOC, тоже сделал как ты, но остается вопрос: будет ли работать теперь )))

WintMax, тебе именно через дини или вообще тебе нужно это сделать?

Добавлено (25.08.2008, 19:46)
---------------------------------------------
ха, моя версия не работает ))), пользуюсь версией XAOC, пока вроде работает
П.С. когда еще не было добавленно не одного действия при помощи Dini, но при добавленных инклудах в мод - выдавало ошибку
добавил dini_Set и ошибка пропала... интересно )))


simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
WintMaxДата: Понедельник, 25.08.2008, 21:16 | Сообщение # 17
Местный
Группа: Продвинутые
Сообщений: 562
Награды: 2
Город: Ростов-на-Дону
Репутация: 67
Замечания: 0%
Статус:
SanSay, хоть как. Главное, чтобы можно было вести логи
SanSayДата: Вторник, 26.08.2008, 00:01 | Сообщение # 18
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
WintMax, для Пенсела

forward ChatLog (string[]);

public ChatLog(string[])
{
new data[64];
new entry[256];
new hour,minute,second;
new year,month,day;
gettime(hour,minute,second);
getdate(year,month,day);
if (minute <= 9)
{
format(entry, sizeof(entry), "[%d.0%d.%d] - %s\n",hour,minute,second,string);
}
else
{
format(entry, sizeof(entry), "[%d.%d.%d] - %s\n",hour,minute,second,string);
}
new File:hFile;
format(data, sizeof(entry), "logs/[%d.%d.%d]-Chat.log",day,month,year);
hFile = fopen(data, io_append);
fwrite(hFile, entry);
fclose(hFile);
}
в public OnPlayerText
....
{
new string[256];
new pname[256];
new output[MAX_PLAYER_NAME+66];
GetPlayerName(playerid, pname, sizeof(pname));
strmid(string, text, 0, 65);
format(output, sizeof(output), " %s[%d]: %s", pname, playerid, string);
SendClientMessageToAll(0xFFFFFFAA, output);
ChatLog(output);
return 0;
}

для привата:
forward PMLog (string[]);
public PMLog(string[])
{
new data[64];
new entry[256];
new hour,minute,second;
new year,month,day;
gettime(hour,minute,second);
getdate(year,month,day);
if (minute <= 9)
{
format(entry, sizeof(entry), "[%d.0%d.%d] - %s\n",hour,minute,second,string);
}
else
{
format(entry, sizeof(entry), "[%d.%d.%d] - %s\n",hour,minute,second,string);
}
new File:hFile;
format(data, sizeof(entry), "logs/[%d.%d.%d]-PM.log",day,month,year);
hFile = fopen(data, io_append);
fwrite(hFile, entry);
fclose(hFile);
}
public OnPlayerPrivmsg(playerid, recieverid, text[])
{
new message[256],pln[24],pln1[24];
GetPlayerName(playerid,pln,sizeof(pln));
GetPlayerName(recieverid,pln1,sizeof(pln1));
format(message,sizeof(message)," [PM] [%s -> %s]: %s",pln,pln1,text);
PMLog(message);
return 1;
}

Добавлено (26.08.2008, 00:01)
---------------------------------------------
народ проблема:
используется для создания банд (мод Пенсел)
...банда создается...
игроку в акк нужно записать название банды в ТЕКСТОВОМ виде
записывается при создании банды так:
GetPlayerName(playerid, name, sizeof(name));
format(stringname, sizeof(stringname),"%s.Gang", name);
strmid(PlayerInfo[playerid][pNameGang], stringname, 0, strlen(stringname), 255);
если после создания банды выйти из игры, то в файле акка напротив строки pNameGang прописывается название банды, если зайти на серв опять и выйти, то все равно в файле все нормально прописывается... казалось бы все ок... но нифига ((( если сделать рестарт серва, то если зайти (с уже созданной бандой) на серв и выйти начинаются чудеса
для начала опишу как сохраняю и как загружаю данные из файла акка:
чтение два варианта пробовал
public OnPlayerLogin
1) fread(file, valtmp);PlayerInfo[playerid][pNameGang] = strval(valtmp);DelPrint(valtmp);
2) fread(file, valtmp); strmid(PlayerInfo[playerid][pNameGang], valtmp, 0, strlen(valtmp), 255);

сохранение
public OnPlayerUpdate(playerid)
format(var, 32, "%s pNameGang\n",PlayerInfo[playerid][pNameGang]);fwrite(hFile, var);

если в чтении использовать первый вариант, то инфа сохраняется только до рестарта серва, т.е. в файл записывается, но если сделать рест серва, то в файле уже остается только пустая строка pNameGang, без значения.
если в чтении использовать второй вариант, то инфа сохраняется, но если после рестарта зайти, после строки "значение" pNameGang (т.е. значение сохраняется) появляется еще одна строка pNameGang, но уже без значения! Т.е. уже имеется 2 строки pNameGang одна с именем банды, другая без имени

потом подумал может у меня все таки неправильно сохраняется всего лишь и попробовал в сохранении использовать
GetPlayerName(playerid, playername, sizeof(playername));
format(string, sizeof(string),"%s.Gang",playername);
format(var, 32, "%s pNameGang\n",strmid(PlayerInfo[playerid][pNameGang], string, 0, strlen(string4), 255));fwrite(hFile, var);
и значение сохраняется даже после рестарта... но не имя банды, а последее введеное игроком, например если войти в игру и сразу выйти, то в значении будет /login пароль
блин какже сохранить и загрузить данные правильно??????????????


simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2


Сообщение отредактировал SanSay - Понедельник, 25.08.2008, 23:16
KaZaNOVaДата: Вторник, 26.08.2008, 01:03 | Сообщение # 19
Уверенный в себе
Группа: Продвинутые
Сообщений: 219
Награды: 1
Город: Ульяновск
Репутация: 51
Замечания: 0%
Статус:
SanSay, попробуй в OnGameModeExit() вставить следующее:
Code
for(new i; i < MAX_PLAYERS; i++){
format(var, 32, "%s pNameGang\n",PlayerInfo[i][pNameGang]);fwrite(hFile, var);
}

Естественно со всеми твоими переменными. :)
и если не получится то в ПлауерДисконнект:
Code
format(var, 32, "%s pNameGang\n",PlayerInfo[playerid][pNameGang]);fwrite(hFile, var);



Not we bad speak - you bad understand... ©KaZaNOVa
У каждого девелопера свои петухи в голове ©OKStyle™


AlekseyДата: Вторник, 26.08.2008, 15:00 | Сообщение # 20
Советчик
Группа: Продвинутые
Сообщений: 1028
Награды: 5
Город: Челябинск
Репутация: 41
Замечания: 0%
Статус:
KaZaNOVa, раскажи про новый инклуд от драко блу dini2!
там система db



вааааааааааййй..// :(0
webserferДата: Воскресенье, 14.09.2008, 15:53 | Сообщение # 21
Уверенный в себе
Группа: Продвинутые
Сообщений: 178
Награды: 1
Город: Санкт-Петербург
Репутация: 26
Замечания: 0%
Статус:
Как создать файл с расширением? (любым, например .txt)
например
Code
new period = dini_Int(udb_encode("settings"),"period");

работает на ура, а
Code
new period = dini_Int(udb_encode("settings.txt"),"period");

не пашет wall
-----
file не предлагать, только Dini



(с) Алфавит, 1990, 17 ноября

Сообщение отредактировал webserfer - Воскресенье, 14.09.2008, 15:55
NC22Дата: Воскресенье, 14.09.2008, 16:20 | Сообщение # 22
Уверенный в себе
Группа: Продвинутые
Сообщений: 260
Награды: 1
Репутация: 17
Замечания: 0%
Статус:
Узнаю для себя новое если кто-нибдь расскажет как делать копии/переименовывать файлы?


[FS] Car Coordinator v 0.1|[FS] Anti Art-Money (введена игровая валюта)|
Программа для Конвертирования карт SAMP в MTA и обратно © NC22
HunterSKДата: Среда, 07.01.2009, 16:21 | Сообщение # 23
Новенький
Группа: Продвинутые
Сообщений: 20
Награды: 1
Город: 73REGION
Репутация: 6
Замечания: 0%
Статус:
Quote (KaZaNOVa)
Н раз выкладывали, но еще раз выложу Если нужен какой-нибудь другой инклуд - тоже могу рассказать. Задавайте вопросы. Постараюсь ответить. Функции для работы с файлами в примерах

перезайлейте плз



QYQ В РОТ, КОГО РЭП НЕ ПРЁТ.
DraderДата: Понедельник, 19.01.2009, 13:14 | Сообщение # 24
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 1
Город: Ижевск
Репутация: 2
Замечания: 0%
Статус:
Можно ли сделать как-нибудь попроще? Мне нужно чисто чтоб либо строку, либо переменную в файл записывать.
А с дини выскакивает fatal error 100: cannot read from file: "Dini" (в D:\Games\GTA San Andreas\pawno\include я добавил файлы)

FliPerSДата: Воскресенье, 08.02.2009, 00:14 | Сообщение # 25
Постоялец
Группа: Продвинутые
Сообщений: 383
Награды: 2
Город: Донецк
Репутация: 61
Замечания: 0%
Статус:
Quote (Professional)
в наше время что-то понять правильно очень сложно

[offtop]
да ты наверно ету фразу в каждом посте пишиш

Добавлено (08.02.2009, 00:14)
---------------------------------------------

Quote (Professional)
в наше время что-то понять правильно очень сложно

:) [offtop]
да ты наверно ету фразу в каждом посте пишиш

[RD]ChezДата: Воскресенье, 08.02.2009, 13:29 | Сообщение # 26
Мастер джэдай
Группа: Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус:
[offtop] BOOB, епт это бот -_-[/offtop]


1 час моей работы стоит минимум 800 рублей для срочных работ.
Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS.
Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы.
Немного ассемблер.
Ох**тельный верстальщик какб.

Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^

chezrd@gmail.com
lance@chez-lab.ru
Форум SAMP о мультиплеерах для GTA. »   » Wiki-Samp-Rus » Всё о чтении/сохранении в файл (Напишите статью для чайников)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua