|
сохранение цвета игрока
|
|
| SanSay | Дата: Среда, 20.08.2008, 02:59 | Сообщение # 1 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| Мод Пенсел. как сделать сохранение цвета и его последующую зарузку при заходе игрока прописал сохранение таким образом: format(var, 32, "%d pColor\n",PlayerInfo[playerid][pColor] = GetPlayerColor(playerid));fwrite(hFile, var); ... сохраняет, только в файле потом в строке цвета пишется наподобие: -13654687 и при входе не загружает... я так думаю не загружает потомучто цвет сохраняется не в том формате, что нужно может его как то по другому нужно сохранять?
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
|
| |
|
|
| Aleksey | Дата: Среда, 20.08.2008, 05:08 | Сообщение # 2 |
|
Советчик
Группа:
Продвинутые
Сообщений: 1028
Награды: 5
Город: Челябинск
Репутация: 41
Замечания: 0%
Статус: 
| ну ты сконвертни это... stringtohex
вааааааааааййй..// :(0
|
| |
|
|
| OKStyle™ | Дата: Среда, 20.08.2008, 05:50 | Сообщение # 3 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| Полагаю, что так: Code SetPlayerColor(playerid,stringtohex(PlayerInfo[playerid][pColor])); А сама функция по этой ссылке.
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
|
| |
|
|
| SanSay | Дата: Среда, 20.08.2008, 14:52 | Сообщение # 4 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| OKStyle™, с этой функцией сохраняется по другому и хотябы уже применяется... но иконка просто становится бесцветной ( с установкой цвета вроде все понятно видимо проблема остается с сохранением чтобы правильно установить цвет при помощи SetPlayerColor(playerid,StringToHex(PlayerInfo[playerid][pColor])); в файле с данными игрока в каком виде должен быть цвет? пример можешь привести?
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
|
| |
|
|
| OKStyle™ | Дата: Среда, 20.08.2008, 15:42 | Сообщение # 5 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| SanSay, например: 6. Да какое угодно число, функция переведёт в: 0x........
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
|
| |
|
|
| SanSay | Дата: Среда, 20.08.2008, 16:31 | Сообщение # 6 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| OKStyle™, тогда может сохранять нужно не просто format(var, 32, "%d pColor\n",PlayerInfo[playerid][pColor] = GetPlayerColor(playerid));fwrite(hFile, var); а как нить: format(var, 32, "%d pColor\n",PlayerInfo[playerid][pColor] = GetPlayerColor(playerid));fwrite(hFile, var); но куда нить впихнуть StringToHex? пытался format(var, 32, "%d pColor\n",StringToHex(PlayerInfo[playerid][pColor]) = GetPlayerColor(playerid));fwrite(hFile, var); format(var, 32, "%d pColor\n",StringToHex(PlayerInfo[playerid][pColor] = GetPlayerColor(playerid)));fwrite(hFile, var); format(var, 32, "%d pColor\n",PlayerInfo[playerid][pColor] = StringToHex(GetPlayerColor(playerid)));fwrite(hFile, var); ругается (
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
|
| |
|
|
| OKStyle™ | Дата: Среда, 20.08.2008, 17:30 | Сообщение # 7 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| SanSay, а если: Code PlayerInfo[playerid][pColor] = StringToHex(GetPlayerColor(playerid)); format(var, 32, "pColor=%d\n",PlayerInfo[playerid][pColor]);fwrite(hFile, var);
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
|
| |
|
|
| SanSay | Дата: Суббота, 23.08.2008, 07:16 | Сообщение # 8 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| OKStyle™, тож не работает... но заметил одну многообещающую вещь в ГТО красный цвет сохраняется: -0000001439485014 а у меня: -1439485014 заметил прикол, т.е. в принципе значит сохраняется правильно, нули может быть там в "ручную" приписываются всетаки значит дело с загрузкой какие еще есть идеи? Добавлено (23.08.2008, 07:16) --------------------------------------------- может я че ни так делаю? делаю следующее: наверх добавил такую штуку: stock StringToHex(string[]) { new ret, val, i; if (string[0] == '0' && (string[1] == 'x' || string[1] == 'X')) i = 2; while (string[i]) { ret <<= 4; val = string[i++] - '0'; if (val > 0x09) val -= 0x07; if (val > 0x0F) val -= 0x20; if (val < 0x01) continue; if (val < 0x10) ret += val; } return ret; } цвет я устанавливаю функцией: SetPlayerColor(playerid,StringToHex(PlayerInfo[playerid][pColor])); Примечание: при установке цвета стандартной функцией: SetPlayerColor(playerid,PlayerInfo[playerid][pColor]); устанавливается нужный цвет и сохраняется в файле акка в формате: -1439485014 (красный) а после установки через SetPlayerColor(playerid,StringToHex(PlayerInfo[playerid][pColor])); иконка просто пропадает с карты, а цвет сохраняется в файле акка в формате: 1 (тупо один) ???
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
|
| |
|
|
| LuxurY | Дата: Суббота, 30.08.2008, 21:36 | Сообщение # 9 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 281
Награды: 1
Город: OZ
Репутация: 45
Замечания: 0%
Статус: 
| все просто берешь цвет, конвертишь его в строку функцией: Code stock hextostring(color) { new colorhex[256]; format(colorhex,sizeof(colorhex),"%02x%06x", color >>> 24, color & 0x00FFFFFF); return colorhex; } строку с цветом пишешь в файл. при коннекте игрока берешь строку с цветом из файла, конвертишь ее в hex код функцией Code stock stringtohex(string[]) { new ret, val, i; if (string[0] == '0' && (string[1] == 'x' || string[1] == 'X')) i = 2; while (string[i]) { ret <<= 4; val = string[i++] - '0'; if (val > 0x09) val -= 0x07; if (val > 0x0F) val -= 0x20; if (val < 0x01) continue; if (val < 0x10) ret += val; } return ret; } и устанавливаешь цвет игроку. и не надо изобретать велосипед. OKStyle™, кста, функцию stringtohex писал не я, а Y_Less.
www.gtascript.ru admin www.gtascript.ru - профессиональный скриптинг SA-MP, MTA
|
| |
|
|
| shAd0w | Дата: Воскресенье, 31.08.2008, 15:12 | Сообщение # 10 |
|
Новенький
Группа:
Пользователи
Сообщений: 10
Награды: 1
Репутация: 2
Замечания: 20%
Статус: 
| у мня на гф регаться надо 3 раза регаться и если не зарегаешься кикает или банит =(
|
| |
|
|
| SanSay | Дата: Понедельник, 22.09.2008, 23:26 | Сообщение # 11 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| shAd0w, а это тут причем? LuxurY, спс за hextostring... правда в обычный файл-акк так и не получилось сохранить, но в месте с Dini добился чего нужно было )))
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
|
| |
|
|
| kRiSyo | Дата: Понедельник, 07.01.2013, 04:27 | Сообщение # 12 |
|
Новенький
Группа:
Продвинутые
Сообщений: 71
Награды: 2
Город: Дублин
Репутация: 5
Замечания: 0%
Статус: 
| Привет всем, все никак не могу понять как пользоваться hextostring
Сделаем новый enum
enum pInfo { pColor, }
потом при регистрации сделаем белый цвет INI_WriteInt("Color", 0xFFFFFFAA);
даем цвет и тут у меня тупик. как использовать hextostring... SetPlayerColor( playerid, INI_ReadInt("Color" ) );
ну и записываем цвет в фаил. INI_WriteInt("Color",GetPlayerColor(playerid));
понимаю как работает hextostring но использовать не получается, прошу помочь )
Сообщение отредактировал kRiSyo - Понедельник, 07.01.2013, 04:28 |
| |
|
|