| 
	|||||||
| Вопросы ньюбов Вопросы ньюбов и ответы бывалых | 
![]()  | 
	
	
| 
		 | 
	Опции темы | Опции просмотра | 
| 
			
			 | 
		#1 | 
| 
			
			 Новичок 
			
			
			
			Регистрация: 11.06.2004 
				
				
				
					Сообщений: 9
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			Хотелось бы спросить следующее 
		
		
		
		
		
		
		
	У меня в жабе есть переменные $weap - прайм $weapoff - офф Как грамотно написать триггер чтобы при дизарме оффа выполнялось поднятие с земли и взятие оффа, при дизарме прайма - аналогично для прайма ПРи этом значения данных переменных -1 слово, например топор или нож а при дизарме приходит строка "выбил тяжелый боевой топор из Ваших рук" Помогите плз. Best Regards  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#2 | 
| 
			
			 Знакомый Мадера 
			![]() Регистрация: 22.05.2004 
				Адрес: Вожский 
				
				
					Сообщений: 83
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			#action {^%0 ловко выбил%1 %2 из Ваших рук.} {взять $prime; взять $off; воор $prime; дер $off} {5} {default} 
		
		
		
		
		
		
			Где $praim - прайм, а $off - офф. 
				__________________ 
		
		
		
		
	Вокруг ромашек - белый снег, А в нем, как капли крови - маки Здесь для кого-то был бы рай Ну а для нас - рубеж атаки!  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#3 | 
| 
			
			 Отличник форума 
			![]() Регистрация: 06.03.2004 
				
				
				
					Сообщений: 505
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			вставляешь в ммс.ини 
		
		
		
		
		
		
		
	#хеш массив задающий падежи праймов my %weap = ('мечем' => 'меч', 'ножом' => 'нож'); делаешь такой триг #триг прописывающий прайм когда им вооружаешся trig {my $item=$1; if (defined $weap{$item}) {$U:: prime=$weap{$item}}} '^Вы вооружились (.*)\.', '1000nf:autoweap'; #триг поднимающий и вооружающий прайм trig { my $item=$1; if ($item eq $prime) {sendl("взя $prime");sendl("воор $prime")}; } 'ловко выбил.? (.*) из Ваших рук\.', '1000nf:NoDisarm'; ну и для оффа почти аналогично.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#4 | 
| 
			
			 Знакомый Мадера 
			![]() Регистрация: 17.07.2004 
				
				
				
					Сообщений: 68
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			ммц такой ужас =(
		 
		
		
		
		
		
		
		
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#5 | |
| 
			
			 Новичок 
			
			
			
			Регистрация: 11.06.2004 
				
				
				
					Сообщений: 9
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 Цитата: 
	
 Хотел на самом деле увидеть ретелл на мой вопрос с использованием регулярных выражений (regexp)  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#6 | 
| 
			
			 The God of Void 
			![]() Регистрация: 05.03.2004 
				
				
				
					Сообщений: 217
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			mmc самый лучший клиент. 
		
		
		
		
		
		
		
	В jmc можно написать практически все(!) что можно написать в mmc, но это стоит таких усилий в конечном итоге это может выглядеть так криво, что лучше учите perl и садитесь за mmc. p.s. 2Ладон пара замечаний: 1. $U::prime=$weap{$item} и "$item eq $prime -- разные переменные. 2. да и комплект тригов вышел "одноразовый" (типа сменил ножички - и придется лезть в *.ini менять названия переменных). (на худой конец выводилась бы мессага, в случае если в хеше %weap не найден ключ $item) p.p.s. свои конфиги к чарам я не рассылаю -- просьба не спамить. (а то когда смотришь на то, как копируются кусочки из чьих-то конфигов и из этого пытаются склеить что-то дельное приходишь в ужас :).  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#7 | 
| 
			
			 Отличник форума 
			![]() Регистрация: 06.03.2004 
				
				
				
					Сообщений: 505
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			[quote=d_blacky]mmc самый лучший клиент. 
		
		
		
		
		
		
		
	В jmc можно написать практически все(!) что можно написать в mmc, но это стоит таких усилий в конечном итоге это может выглядеть так криво, что лучше учите perl и садитесь за mmc. p.s. 2Ладон пара замечаний: 1. $U:  rime=$weap{$item} и "$item eq $prime -- разные переменные.[quote] ну писал на коленке... [quote=d_blacky] 2. да и комплект тригов вышел "одноразовый" (типа сменил ножички - и придется лезть в *.ini менять названия переменных). (на худой конец выводилась бы мессага, в случае если в хеше %weap не найден ключ $item) [quote] ты не учитываешь что можно один раз забить все праймы-офф и забыть про это дело... опять же можно прикрутить к этому делу базу в файле, и сделать алиасы на добавление новых оружий... я же пример написал, дорабатывать его можно довольно сильно.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#8 | ||
| 
			
			 The God of Void 
			![]() Регистрация: 05.03.2004 
				
				
				
					Сообщений: 217
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 Цитата: 
	
 Цитата: 
	
 Вдруг у тебя 2 одинаковых оружия. Вдруг место действия - комната без света и тому подобные сложности. Я предолжил бы следующую идею: 2 трига определяющих названия прайма и оффа по команде "экип": Код: 
	trig {
    if (цвет 1ого слова пришедшей строки светло серый) {
       $off_weapon=$1;
    }
} '^<в левой руке>\s+([\w\-]+\s?[\w\.]+?)\s+<.+>$', "nf:get_off";
trig {
    if (цвет 1ого слова пришедшей строки светло серый) {
        $praim_weapon=$1;
    }
} '^<в правой руке>\s+([\w\-]+\s?[\w\.]+?)\s+<.+>$', "nf:get_praim";
Код: 
	trig {
    if (цвет пришедшей строки светло серый) {
        get_and_equip_disarm_weapon(vinpad_to_impad($1))
} '^[\w\-\.\,]+? ловко выбил.? (.+?) из Ваших рук\.$', "nf:weapons_are_disarmed";
sub vinpad_to_impad() -- в соответствии с правилами русского языка переводит название оружия (состоящего как правило из 1 существительного и 1-2 прилагательных в именительный падеж) sub get_and_equip_disarm_weapon() -- поднимает с земли оружие, проверяет пришедшую строку на эквивалентность относительно $off_weapon и $prime_weapon, затем заменяет пробелы в пришедшем слове точками (получается: "острое.шило", "посох.странствий" и пытается ими вооружиться/взять в офф) (как вариант - можно на этапе sub vinpad_to_impad() оставить лишь существительное (это не настолько сложно определить и в большинстве случаев работает) и затем его экипировывать. (правда в этом случае будут траблы если в прайме какой-нибудь "титановый кинжал", оффе "стальной кинжал" а на вход пришла строка "кинжал". Правда выше приведенный триггер не дает гарантии когда мы имеем дело с кривыми объектами (не правильные падежи, не те альясы). + Самое смачное видеть фразу "Кто-то ловко выбил что-то из Ваших рук" -- тьма решает. p.s. http://www.mp3search.ru/m3u.html?id=122031 -- всем достать в хорошем битрейде и слушать до просветления.  | 
||
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#9 | 
| 
			
			 Отличник форума 
			![]() Регистрация: 06.03.2004 
				
				
				
					Сообщений: 505
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			Правда выше приведенный триггер не дает гарантии когда мы имеем дело с кривыми объектами (не правильные падежи, не те альясы). + Самое смачное видеть фразу "Кто-то ловко выбил что-то из Ваших рук" -- тьма решает. 
		
		
		
		
		
		
		
	когда тьма тригер пофиг, всеравно взять не сможешь Ж)  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#10 | 
| 
			
			 The God of Void 
			![]() Регистрация: 05.03.2004 
				
				
				
					Сообщений: 217
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			Ага, как не совершенен наш мир  
		
		
		
		
		
		
		
	 
		 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#11 | 
| 
			
			 Новичок 
			
			
			
			Регистрация: 11.06.2004 
				
				
				
					Сообщений: 9
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			Ну ..дец. Я все понимаю. И я не ньюб. Но ,господа, я задумываюсь о Вашем национальном происхождени , когда я прошу триг для жабы, а Вы мне говорите триг для ммс и обсуждаете его достоинства и недостатки((. А в итоге вывод я пользуюсь таким же тригом который написал Зубран+ хайлайт, но проблемы это не решает. В принципе все хорошо, но у меня dial up и поэтому проверка сразу двух условий дает лаг, + еще лаги бывают от умений допустим. И про то что я хотел увидеть здесь reg exp тоже как-то мимо прошло,правда Блэки предложил, но опять же для ммс 
		
		
		
		
		
		
		
	BR  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#12 | 
| 
			
			 Знакомый Мадера 
			![]() Регистрация: 15.06.2004 
				
				
				
					Сообщений: 55
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			Мдаа, топик про триггера в jmc а вы тут свой mmc пропагандируете  
		
		
		
		
		
		
			![]() Doc а не пофигу ли тебе какой именно випон выбили? Лишняя строчка мешает? Нефик париться нуна хватать все пока моб не сделал это быстрее тебя ж) 
				__________________ 
		
		
		
		
	Подпись к рисунку: "Жопа - вид спереди"  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#13 | 
| 
			
			 Новичок 
			
			
			
			Регистрация: 14.11.2004 
				
				
				
					Сообщений: 33
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			так.. к слову.. regexp он и в африке regexp вроде.. 
		
		
		
		
		
		
		
	какая в ... разница какой клиент? Идею дали, че бы самому-то мозг не напрячь? А то возникает желание написать чтонибудь из разряда: /action {выбил} {конец} и кстати, этож какой триггер надо написать, чтобы проверка двух условий давала ощутимый лаг?  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#14 | 
| 
			
			 Летописец 
			![]() Регистрация: 11.03.2004 
				Адрес: СПб 
				
				
					Сообщений: 679
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 
			
			Народ, ну будьте вы проще, а?  
		
		
		
		
		
		
			  Вон Зубран второй же репликой дал, по-моему, самый надежный и быстрый триггер. И пофиг, что он всегда пытается оба оружия подобрать -- жалко вам, что ли? Еще добавить альясы на задание переменных для прайма и оффа и не забывать их обновлять при смене оружия. Все, проблема решена.
		
				__________________ 
		
		
		
		
	"Я во все дела сувался -- всесторонне развивался..."  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 
			
			 | 
		#15 | |
| 
			
			 Новичок 
			![]() Регистрация: 23.09.2004 
				Адрес: Красноярск 
				
				
					Сообщений: 53
				 
				
				
				
				
				 | 
	
	
	
		
		
			
			 Цитата: 
	
 #al {дер}{#var off %0;держать %0} #al {воо}{#var prime %0;вооруж %0} $) 
				__________________ 
		
		
		
		
	Твой эгоизм - это мерило искренности твоего желания быть самим собой. Прислушивайся к его советам внимательно. (с) Р.Бах  | 
|
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 |