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

 



 
          





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





Последние Файлы 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
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Модератор форума: Alcoholik  
Дать контракт лидеру хитманов
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))
(! это помойму лишнее! Хотя точно не помню crazy




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]

Вот рабочий ! wink


MAS_22Дата: Воскресенье, 19.04.2009, 21:16 | Сообщение # 5
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2554
Награды: 103
Город: -
Репутация: 1658
Замечания: 80%
Статус:
Жека ты воруга! crazy
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, Код жэки правильный ибо " если игрок не (член или лидер) " условие верное cool


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 месяца и экспериметом пришел к выводу, что выгодней использовать " не( или ) ", чем " не и не ", а " не или не " вообще приводит к какойто херне, " не ( и ) " приводит к тому что никто не может принять. больше вариантов построения в голову не приходит, но может ты гений lol


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,
что то ты страннное мутишь) mda
расскажи как бы ты сделал

А может так?

((PlayerInfo[giveplayerid][pMember] == 8 && PlayerInfo[giveplayerid][pLeader] == 0) || (PlayerInfo[giveplayerid][pMember] == 0 && PlayerInfo[giveplayerid][pLeader] == 8)) crazy lol


Сообщение отредактировал 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
Надеюсь вы ради интереса сами поэкспериментируете с условиями в моде cool wink



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;
}

Все!!

Зачем мутить с "или" уходить в тонкие миры???

То что я мучу называется наиболее легкое и простое решение задачи lol

ЗЫ Скопировано с моего мода.


Хочешь играть на сервере с высоким и стабильным онлайном? Присоединяйся!
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, для условий данной задачи да crazy короче темку офф уже разобрались crazy


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

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

chezrd@gmail.com
lance@chez-lab.ru
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:





 


 


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