 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
проверка
| |
| SanSay | Дата: Воскресенье, 24.08.2008, 00:35 | Сообщение # 1 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| МОД ПЕНСЕЛ ППЦ, уже не знаю че и думать... нужно плюшевую проверку сделать: если игрок вводит /enter - войти в дом, то нужно чтобы прошла проверка ника в файле с домами и ником игрока который ввел команду по идее это должно было быть так: for(new i = 0; i < sizeof(HouseInfo); i++) //i - это ид дома { if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez])) // если игрок находится в координатах входа в дом { if (HouseInfo[i][hOwner] != GetPlayerName(playerid, name, sizeof(name))) // если у ид дома владелец не равен нику игрока который ввел команду { SendClientMessage(playerid, COLOR_GRAD1, " Это не ваш дом!"); // сообщение игроку return 1; } if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0) //если ключ у игрока совпадает с ид дома, то { его пускает в дом } else { GameTextForPlayer(playerid, "~r~€AЊEPЏO", 5000, 1); //сообщение "заперто" } } } и нифига в дом не пускает, когбудто ники разные! на всякий случай к сообщению SendClientMessage(playerid, COLOR_GRAD1, " Это не ваш дом!"); добавил format(string, sizeof(string), " владелец: %s, ключ: %d",HouseInfo[i][hOwner], i); SendClientMessage(playerid, COLOR_GRAD1, string); format(string, sizeof(string), " ник: %s, ключ дома: %d", name, PlayerInfo[playerid][pPhousekey]); SendClientMessage(playerid, COLOR_GRAD1, string); показывает что и ник и ключ дома совпадает и должно пустить в дом игрока, но ... не пускает, говорит " Это не ваш дом!" чет я туплю или че?
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 - Воскресенье, 24.08.2008, 00:39 |
| |
|
|
| NC22 | Дата: Воскресенье, 24.08.2008, 04:13 | Сообщение # 2 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 1
Репутация: 17
Замечания: 0%
Статус: 
| SanSay, А пробовал напрямую в проверке к name обращаться?
[FS] Car Coordinator v 0.1|[FS] Anti Art-Money (введена игровая валюта)| Программа для Конвертирования карт SAMP в MTA и обратно © NC22
|
| |
|
|
| XAOC | Дата: Воскресенье, 24.08.2008, 06:00 | Сообщение # 3 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| SanSay, не Code if (HouseInfo[i][hOwner] != GetPlayerName(playerid, name, sizeof(name))) а Code GetPlayerName(playerid, name, sizeof(name); if(strcmp(HouseInfo[i][hOwner],name,false))//вродебы правильно написал))
|
| |
|
|
| NC22 | Дата: Воскресенье, 24.08.2008, 06:03 | Сообщение # 4 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 1
Репутация: 17
Замечания: 0%
Статус: 
| XAOC, считай мой совет процитировал..только разными способами можно
[FS] Car Coordinator v 0.1|[FS] Anti Art-Money (введена игровая валюта)| Программа для Конвертирования карт SAMP в MTA и обратно © NC22
|
| |
|
|
| SanSay | Дата: Воскресенье, 24.08.2008, 07:57 | Сообщение # 5 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| strcmp(name,HouseInfo[i][hOwner],true)==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
|
| |
|
|
| XAOC | Дата: Воскресенье, 24.08.2008, 08:25 | Сообщение # 6 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| strcmp Сравнивает две строки друг с другом, с такими опциями, как игнорирование заглавных букв или максимальная длина. Очень часто используется в OnPlayerCommandText. (const string1[],const string2[],ignorecase=false,length=cellmax) const string1[] Первая сравниваемая строка. const string2[] Строка, которую вы хотите сравнить с string1. ignorecase=false Игнорировать заглавные буквы, если true. length=cellmax Максимальное число проверяемых ячеек. Возвращает 0 - если строки равны между собой.
|
| |
|
|
| SanSay | Дата: Воскресенье, 24.08.2008, 21:05 | Сообщение # 7 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| XAOC, length=cellmax Максимальное число проверяемых ячеек. каких ячеек?
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
|
| |
|
|
| Orange | Дата: Воскресенье, 24.08.2008, 21:22 | Сообщение # 8 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 945
Награды: 6
Город: San Fierro
Репутация: 101
Замечания: 0%
Статус: 
| Quote (XAOC) GetPlayerName(playerid, name, sizeof(name); if(strcmp(HouseInfo[i][hOwner],name,false))//вродебы правильно написал)) а можно еще маленькую функцию такую написать: GetSimplePlayerName(playerid) { GetPlayerName(playerid, playername, 16); return playername; } и потом просто можно if(strcmp(HouseInfo[i][hOwner],GetSimplePlayerName(playerid),false)) и не надо еще ипсать там new name GetPlayername... ну а вообще кому как
|
| |
|
|
| NC22 | Дата: Понедельник, 25.08.2008, 00:57 | Сообщение # 9 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 1
Репутация: 17
Замечания: 0%
Статус: 
| SanSay,Quote (Mishanzanza) каких ячеек? Сколько символов строки проверяем. В данном случае Code if (HouseInfo[i][hOwner] != GetPlayerName(playerid, name,[b] sizeof(name)[/b])) по длинне строки name
[FS] Car Coordinator v 0.1|[FS] Anti Art-Money (введена игровая валюта)| Программа для Конвертирования карт SAMP в MTA и обратно © NC22
|
| |
|
|
| SanSay | Дата: Понедельник, 25.08.2008, 11:50 | Сообщение # 10 |
|
Долгожитель
Группа:
Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус: 
| strcmp(name,HouseInfo[i][hOwner],true)==1 так у меня вообще не объявлена длина, так тоже чтоли можно, если да, то зачем тогда ее вообще объявлять? и в конце, у меня 1, а бывает и 0 - че это значит?
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
|
| |
|
|
| XAOC | Дата: Понедельник, 25.08.2008, 14:50 | Сообщение # 11 |
|
Советчик
Группа:
Разработчики
Сообщений: 1190
Награды: 11
Город: Гдета там>>
Репутация: 311
Замечания: 0%
Статус: 
| SanSay, обьявлять её можно если требуется ограниченное сравнение ==1 значит что "если строки не равны то..."
|
| |
|
|
|
 |
|
 | |
| |
|