 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Дать контракт лидеру хитманов
| |
| GODSMACK | Дата: Воскресенье, 19.04.2009, 19:26 | Сообщение # 1 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 363
Награды: 9
Город: Чернигов
Репутация: -51
Замечания: 80%
Статус: 
| Вот когда пытаеся дать контракт лидеру хитманов пишет the player is not hitman [pwn] else if ((strcmp("Givehit", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("Givehit"))) { if(PlayerInfo[playerid][pRank] < 4) { SendClientMessage(playerid, COLOR_GREY, " Вам нужен Rank 4 чтобы давать контракты на1мникам !"); return 0; } if(hitfound == 0) { SendClientMessage(playerid, COLOR_GREY, " There is no Hit Founded yet, use Contracts in the Portable first !"); return 0; } tmp = strtok(text, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /Givehit [playerid/PartOfName]"); return 0; } //giveplayerid = strval(tmp); giveplayerid = ReturnUser(tmp); if(IsPlayerConnected(giveplayerid)) { if(giveplayerid != INVALID_PLAYER_ID) { if(PlayerInfo[giveplayerid][pMember] != 8 || PlayerInfo[giveplayerid][pLeader] != 8) { SendClientMessage(playerid, COLOR_GREY, " Этот игрок не Hitman !"); return 0; } if(GoChase[giveplayerid] < 999) { SendClientMessage(playerid, COLOR_GREY, " Этот наёмник уже занят контрактом !"); return 0; } if(IsPlayerConnected(hitid)) { GetPlayerName(playerid, sendername, sizeof(sendername)); GetPlayerName(giveplayerid, giver, sizeof(giver)); GetPlayerName(hitid, giveplayer, sizeof(giveplayer)); //format(string, sizeof(string), "* You assigned%s to kill: %s(ID:%d), for $%d.", giver, giveplayer, hitid, PlayerInfo[hitid][pValue]); //SendClientMessage(playerid, COLOR_YELLOW, string); //format(string, sizeof(string), "* Hitman %s has assigned you to kill: %s(ID:%d), for $%d.", sendername, giveplayer, hitid, PlayerInfo[hitid][pValue]); //SendClientMessage(giveplayerid, COLOR_YELLOW, string); format(string, sizeof(string), "* Hitman %s, назначен Hitman %s убит: %s(ID:%d), для $%d.", sendername, giver, giveplayer, hitid, PlayerInfo[hitid][pHeadValue]); SendFamilyMessage(8, COLOR_YELLOW, string); GoChase[giveplayerid] = hitid; GetChased[hitid] = giveplayerid; GotHit[hitid] = 1; hitid = 0; hitfound = 0; return 0; } else { SendClientMessage(playerid, COLOR_GREY, " Человек на которго контракт щас не в игре, посмотрите список коонтрактов !"); return 0; } } return 0 } else { SendClientMessage(playerid, COLOR_GREY, " Этот Hitman не в игре. !"); return 0; } } [/pwn]
Welcome to Russian Role Play server Ip: 46.38.57.190:7784
Сообщение отредактировал GODSMACK - Воскресенье, 19.04.2009, 19:30 |
| |
|
|
| kiril94 | Дата: Воскресенье, 19.04.2009, 19:58 | Сообщение # 2 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 128
Награды: 2
Город: VLN
Репутация: 6
Замечания: 20%
Статус: 
| if(!(PlayerInfo[giveplayerid][pMember] == 8 || PlayerInfo[giveplayerid][pLeader] == 8)) Вроде так надо. Я точно незнаю
|
| |
|
|
| ALION133 | Дата: Воскресенье, 19.04.2009, 20:01 | Сообщение # 3 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 241
Награды: 3
Город: Новокузнецк
Репутация: 14
Замечания: 60%
Статус: 
| if(!(PlayerInfo[giveplayerid][pMember] == 8 || PlayerInfo[giveplayerid][pLeader] == 8)) (! это помойму лишнее! Хотя точно не помню
|
| |
|
|
| Drago_Jeka | Дата: Воскресенье, 19.04.2009, 20:35 | Сообщение # 4 |
|
Группа:
I'm V.I.P.
Сообщений: 754
Награды: 41
Город: Где-то там...
Замечания: 0%
Статус: 
| [pwn] else if ((strcmp("Givehit", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("Givehit"))) { if(PlayerInfo[playerid][pRank] < 4) { SendClientMessage(playerid, COLOR_GREY, " Вам нужен Rank 4 чтобы давать контракты на1мникам !"); return 0; } if(hitfound == 0) { SendClientMessage(playerid, COLOR_GREY, " There is no Hit Founded yet, use Contracts in the Portable first !"); return 0; } tmp = strtok(text, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /Givehit [playerid/PartOfName]"); return 0; } //giveplayerid = strval(tmp); giveplayerid = ReturnUser(tmp); if(IsPlayerConnected(giveplayerid)) { if(giveplayerid != INVALID_PLAYER_ID) { if(!(PlayerInfo[giveplayerid][pMember] == 8 || PlayerInfo[giveplayerid][pLeader] == 8)) { SendClientMessage(playerid, COLOR_GREY, " Этот игрок не Hitman !"); return 0; } if(GoChase[giveplayerid] < 999) { SendClientMessage(playerid, COLOR_GREY, " Этот наёмник уже занят контрактом !"); return 0; } if(IsPlayerConnected(hitid)) { GetPlayerName(playerid, sendername, sizeof(sendername)); GetPlayerName(giveplayerid, giver, sizeof(giver)); GetPlayerName(hitid, giveplayer, sizeof(giveplayer)); //format(string, sizeof(string), "* You assigned%s to kill: %s(ID:%d), for $%d.", giver, giveplayer, hitid, PlayerInfo[hitid][pValue]); //SendClientMessage(playerid, COLOR_YELLOW, string); //format(string, sizeof(string), "* Hitman %s has assigned you to kill: %s(ID:%d), for $%d.", sendername, giveplayer, hitid, PlayerInfo[hitid][pValue]); //SendClientMessage(giveplayerid, COLOR_YELLOW, string); format(string, sizeof(string), " Hitman %s, назначен Hitman %s убит: %s(ID:%d), для $%d.", sendername, giver, giveplayer, hitid, PlayerInfo[hitid][pHeadValue]); SendFamilyMessage(8, COLOR_YELLOW, string); GoChase[giveplayerid] = hitid; GetChased[hitid] = giveplayerid; GotHit[hitid] = 1; hitid = 0; hitfound = 0; return 0; } else { SendClientMessage(playerid, COLOR_GREY, " Человек на которго контракт щас не в игре, посмотрите список коонтрактов !"); return 0; } } return 0; } else { SendClientMessage(playerid, COLOR_GREY, " Этот Hitman не в игре. !"); return 0; } }[/pwn] Вот рабочий ! 
|
| |
|
|
| MAS_22 | Дата: Воскресенье, 19.04.2009, 21:16 | Сообщение # 5 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2554
Награды: 103
Город: -
Репутация: 1658
Замечания: 80%
Статус: 
| Жека ты воруга! Quote (ALION133) это помойму лишнее! Хотя точно не помню стирать нафиг
|
| |
|
|
| HELKERN | Дата: Понедельник, 20.04.2009, 05:35 | Сообщение # 6 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус: 
| ALION133, Если убрать - функция будет работать для всех кроме хитманов. Так что ! нужен kiril94, прально сказал
|
| |
|
|
| Tripoll | Дата: Понедельник, 20.04.2009, 09:00 | Сообщение # 7 |
|
Уверенный в себе
Группа:
I'm V.I.P.
Сообщений: 181
Награды: 7
Город: Ищи в Москве
Репутация: 43
Замечания: 0%
Статус: 
| 1. смотри туда где у тебя выдается сообщение. 2. а именно сюда: Code if(PlayerInfo[giveplayerid][pMember] != 8 || PlayerInfo[giveplayerid][pLeader] != 8) { SendClientMessage(playerid, COLOR_GREY, " Этот игрок не Hitman !"); return 0; } код Drago_Jeka тоже неправильный Code if(!(PlayerInfo[giveplayerid][pMember] == 8 || PlayerInfo[giveplayerid][pLeader] == 8)) { SendClientMessage(playerid, COLOR_GREY, " Этот игрок не Hitman !"); return 0; } 3. попробуй перевести это на русский. Там говорится если игрок (которому передается заказ) не является киллером или не является лидером киллеров, то команда не сработает. Вдумайся в каждое слово. Под это условие должны попадать все игроки и даже включая обычных киллеров и лидера. Потому что обычные киллеры попадают под второе условие, а лидеры под первое. На всякий случай - у лидера [pMember] равно нулю (не равно 8), а у обычного наоборот [pLeader] = 0 (и не равно 8) 4. В чем ошибка? Неправильное условие. Какой знак нужно заменить в условии чтобы условие стало правильным, то есть отсекало тех, кто ни лидер ни обычный киллер. Думаю ты сам ответишь на этот вопрос ибо элементарщина. ЗЫ и убери ошибки из сообщений - на1мникам, коонтрактов, на которго. "Этот наёмник уже занят контрактом" - это не по-русски, переводи не дословно, а чтоб было понятно.
Хочешь играть на сервере с высоким и стабильным онлайном? Присоединяйся! 86.110.181.156:6666 или gta.spark-games.ru:6666 Построй свою политику!
Сообщение отредактировал Tripoll - Понедельник, 20.04.2009, 09:01 |
| |
|
|
| [RD]Chez | Дата: Понедельник, 20.04.2009, 09:27 | Сообщение # 8 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус: 
| Tripol, Код жэки правильный ибо " если игрок не (член или лидер) " условие верное
1 час моей работы стоит минимум 800 рублей для срочных работ. Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS. Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы. Немного ассемблер. Ох**тельный верстальщик какб.
Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^
chezrd@gmail.com lance@chez-lab.ru
|
| |
|
|
| HELKERN | Дата: Понедельник, 20.04.2009, 09:59 | Сообщение # 9 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус: 
| Tripoll, ты рассказываешь так, буд то в условии жеки стоит И - && Но ведь там находиться ИЛИ || поэтому его код правельный. Лидер имея pMember == 0 но имея pLeader = 8 пройдёт проверку, как и Участник киллеров имея pLeader == 0 и pMember == 8
Сообщение отредактировал HELKERN - Понедельник, 20.04.2009, 10:02 |
| |
|
|
| Tripoll | Дата: Понедельник, 20.04.2009, 10:19 | Сообщение # 10 |
|
Уверенный в себе
Группа:
I'm V.I.P.
Сообщений: 181
Награды: 7
Город: Ищи в Москве
Репутация: 43
Замечания: 0%
Статус: 
| Хех.. Еще раз подумайте. Напоминаю что человеку нужно чтобы заказ можно было передавать киллерам включая лидера, остальным - нет.
Хочешь играть на сервере с высоким и стабильным онлайном? Присоединяйся! 86.110.181.156:6666 или gta.spark-games.ru:6666 Построй свою политику!
|
| |
|
|
| [RD]Chez | Дата: Понедельник, 20.04.2009, 11:11 | Сообщение # 11 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус: 
| Tripol, я уже думал 2 месяца и экспериметом пришел к выводу, что выгодней использовать " не( или ) ", чем " не и не ", а " не или не " вообще приводит к какойто херне, " не ( и ) " приводит к тому что никто не может принять. больше вариантов построения в голову не приходит, но может ты гений
1 час моей работы стоит минимум 800 рублей для срочных работ. Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS. Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы. Немного ассемблер. Ох**тельный верстальщик какб.
Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^
chezrd@gmail.com lance@chez-lab.ru
|
| |
|
|
| HELKERN | Дата: Понедельник, 20.04.2009, 14:59 | Сообщение # 12 |
|
Уважаемый человек
Группа:
I'm V.I.P.
Сообщений: 767
Награды: 17
Город: Улан-Удэ
Репутация: 206
Замечания: 0%
Статус: 
| [RD]Chez, " не( или ) " = "Не и Не" Из Формулы ДеМоргана Tripoll, что то ты страннное мутишь) расскажи как бы ты сделал А может так? ((PlayerInfo[giveplayerid][pMember] == 8 && PlayerInfo[giveplayerid][pLeader] == 0) || (PlayerInfo[giveplayerid][pMember] == 0 && PlayerInfo[giveplayerid][pLeader] == 8)) 
Сообщение отредактировал HELKERN - Понедельник, 20.04.2009, 15:04 |
| |
|
|
| [RD]Chez | Дата: Понедельник, 20.04.2009, 15:26 | Сообщение # 13 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус: 
| HELKERN, по деморгану есть логическое сложение и логическое умножение, но не и/или идем поэтапно. 1. Получаем данные о игроке и в скобках одно из двух должно быть правильным, то есть либо игрок лидер, либо член, либо никто, а если он лидер то попадет под условие, если член, то тоже попадет ибо стоит или, все кроме лидеров и членов не попадают ибо у них нет лидерки 8 и членства 8 ни у кого. 2. отриание предыдущего условия, то есть если этот человек уже 100% состоит во фракции исходя из 1, то дает понять, что нужно отрицать предыдущее, то есть под общее условие попадают все, кто не имеет данных в соответствии с 1 и никакие логические законы 9-10 класса школы тут не применимы(почти) деморган ваще отдыхает тут. он только с коньюнкцией и дизьюнкцией работает. Здесь не принцип формулы, а принцип порядкового разложения условия на состовляющие, последовательно, тобишь (2+2)*2 != 2+2*2 Надеюсь вы ради интереса сами поэкспериментируете с условиями в моде
1 час моей работы стоит минимум 800 рублей для срочных работ. Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS. Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы. Немного ассемблер. Ох**тельный верстальщик какб.
Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^
chezrd@gmail.com lance@chez-lab.ru
Сообщение отредактировал [RD]Chez - Понедельник, 20.04.2009, 15:29 |
| |
|
|
| Tripoll | Дата: Понедельник, 20.04.2009, 15:59 | Сообщение # 14 |
|
Уверенный в себе
Группа:
I'm V.I.P.
Сообщений: 181
Награды: 7
Город: Ищи в Москве
Репутация: 43
Замечания: 0%
Статус: 
| Самый простой вариант: Code if(PlayerInfo[giveplayerid][pMember] != 8 && PlayerInfo[giveplayerid][pLeader] != 8 ) { SendClientMessage(playerid, COLOR_GREY, " Этот игрок - не киллер. "); return 0; } Все!! Зачем мутить с "или" уходить в тонкие миры??? То что я мучу называется наиболее легкое и простое решение задачи ЗЫ Скопировано с моего мода.
Хочешь играть на сервере с высоким и стабильным онлайном? Присоединяйся! 86.110.181.156:6666 или gta.spark-games.ru:6666 Построй свою политику!
Сообщение отредактировал Tripoll - Понедельник, 20.04.2009, 16:00 |
| |
|
|
| [RD]Chez | Дата: Понедельник, 20.04.2009, 16:32 | Сообщение # 15 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус: 
| Tripoll, для условий данной задачи да короче темку офф уже разобрались
1 час моей работы стоит минимум 800 рублей для срочных работ. Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS. Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы. Немного ассемблер. Ох**тельный верстальщик какб.
Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^
chezrd@gmail.com lance@chez-lab.ru
|
| |
|
|
|
 |
|
 | |
| |
|