![]()  | 
	
		
 Модуль "повар" для mmc 
		
		
			Вложений: 1 
		
		Я тут написал модуль для варки зелий. 
	Что он делает: - собирает ингридиенты (триггеры спёрты) - показывает, каких ингридиентов не хватает для какого рецепта - считает, сколько чего можно сварить - варит Что он НЕ делает: - не следит за качеством ингридиентов Что требуется: - регулярно дописывать ингридиенты, неизвестные модулю Эта фигня (ИМХО) вполне подходит для, к примеру, раскачки рецептов (хотя просветов у мну пока ни одного не было). Так же она подходит для того, чтобы если кому надо, он взял и навтыкал туда проверок на качество ингридиентов. Возможно, позже я это сделаю сам. Как оно работает? Загрузка ингридиентов и рецептов: Код: 
	Вых:СВ> _загрузить_ингридиентыКод: 
	Вых:СВ> рец_сбор_ингридиентов - включение/выключение триггеров на сбор ингров _ингридиенты_сумка - сумка, в которой хранятся ингры _загрузить_ингридиенты - посчитать, сколько чего в этой сумке есть _загрузить_рецепты - посмотреть, что умеем готовить, и что для этого надо _состав - посмотреть состав конкретного рецепта _варить - собсно, варить чай рецепт - гм... команда делает то же, что и в маде, вывод мада слегка модифицирован на предмет показать, сколько чего можем сварить. Предложения приветствуются, реакция не обещается, лицензия как у mmc (у которого как у Perla, у которого на выбор - Artistic License или GPL) В архиве - два файла Cook.pm - в кодировке koi8-r Cook.win.pm - в windows-кодировке (переименуйте его в Cook.pm перед использованием) Подключение: кладем туда, где лежит основной конфиг, и в конфиг пишем Код: 
	use Cook; | 
		
 Ну как модуль народ? отпишитесь кто пользуется, стоит ли его на жабу портировать? 
	 | 
		
 Я там чё-то ошибок нашёл :) Поисправляю сперва, не надо пока его смотреть. 
	 | 
		
 попытался заюзать 
	при варке ругается #perl: Undefined subroutine &QBaze::alias called at ./Cook.pm line 252. 252 my $i = QBaze::alias(pop @{$have_ingr{$_}});  | 
		
 щас будет новый version 
	 | 
		
 новая версия 
		
		
			Вложений: 1 
		
		Большие изменения в модуле. 
	1.Информация по конкретным ингридиентам вынесена в отдельный файл (cook.rc) 2. Соответственно, добавлена возможность перезагружать базу ингров на лету, не вырубая клиент 3. Добавлена возможность оперативно избавляться от ватных ингридиентов 4. Исправлены ошибки УСТАНОВКА В архиве - две папки, cook.koi8-r и cook.win. 1. Два файла (Cook.pm и cook.rc) из папки, соответствующей Вашей кодировке, копируете в папку, где находица Ваш конфиг. 2. В конфиге где-нить в начале пишем Код: 
	use Cook;Код: 
	Cook::promptHook()КОМАНДЫ _обновить_базу_ингридиентов пригодица, если Вы изменили файл cook.rc и желаете немедленно увидеть изменения _ингридиенты_сумка пригодица для установки названия контейнера с ингридиентами. Ингридиенты вне этого контейнера модуль не увидит. _загрузить_ингридиенты пригодица, чтобы модуль знал, что в этой сумке есть, и подсчитал, сколько чего из этого можно сварить _доложить_ингридиенты пригодица, чтобы Вы знали, что модуль знает о Ваших ингридиентах _загрузить_рецепты пригодица, чтобы модуль знал рецепты, которыми Вы владеете _вата пригодица, чтобы избавиться от ватных ингридиентов. Если заюзать команду без аргументов, модуль расскажет, что там к чему. _убрать_ингридиенты пригодица, чтобы сложить ингридиенты, которые у Вас в инвентаре, в сумку для ингридиентов _состав N пригодица, чтобы узнать состав рецепта под номером N _варить N пригодица, чтобы сварить рецепт под номером N _сбор_ингридиентов пригодица, чтобы собирать ингридиенты по пути следования рецепт - в выводе команды мада "рецепт" добавлено чуток информации.  | 
		
 даеш в жабу такой) антипрограммерам) 
	 | 
		
 можно позанудничать? 
	они "ингредиенты" вообще-то :). сменил бы ты команды, пока не поздно :). или можно вообще сократить до "ингров", для команды вполне сойдет.  | 
		
 *в шоке* 
	у меня врождённая грамотность! завтра будет исправленная версия:)  | 
		
 как вариант: вместо хука использовать альясы. 
	 | 
		
 Вложений: 1 
		
		Исправлены команды, добавлен Readme.txt файлик. 
	Две папки: cook.win и cook.koi8-r. Читаем ридми из соотв. папки, делаем по инструкции.  | 
		
 Цитата: 
	
 Как мы грузим ингредиенты? Мы "осматриваем" контейнер с инграми, и на каждый известный ингр срабатывает триггер. Как только ингры кончается, нам надо это отметить. Для этого и служит хук на промпт. Алиасами как сделать?  | 
		
 вместо хука на инпут, на отлов команд. можно альясы. тогда модуль будет автономным. 
	 | 
		
 там нет хука на инпут. там есть хук на промпт. и алиасы. 
	 | 
		
 можно поставить таймаут в триге и через 3 секунды отключать отлов ингров. 
	 | 
| Часовой пояс GMT +4, время: 14:08. | 
	Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot