xConf.pl - меняем на ходу mon_control/pickupitems/items

Дополнения к OpenKore, расширяющиее её функциональность, называются плагинами.

Модератор: 4epT

Аватара пользователя
Kissa2k
Профессионал
Сообщения: 1304
Зарегистрирован: Пн дек 04, 2006 8:33 pm

Сообщение Kissa2k »

piroJOKE писал(а):Еще одна мелочь - ты похерил табуляции в коде, он плохо теперь читаеццо. "Нетоварный вид".
оффтоп
В Anjuta (IDE для C/C++) это называется Hello World style :ROFL:
Lims
Нууууп
Сообщения: 723
Зарегистрирован: Чт ноя 09, 2006 7:55 pm

Сообщение Lims »

*по секрету* у меня он изначально назывался PifPaf
расставил табы, только вот толку от них... может я не правильно расставил. Все теперь он именуется xConf
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

чуть-чуть переиначил плагин, посмотри плз.

если честно, то я не понял прикола с sub {...} ...?
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
4epT
macro-маньячина
Сообщения: 2792
Зарегистрирован: Чт дек 21, 2006 1:23 pm
Сервер RO:: 4game
Discord: ya4ept#8494
Контактная информация:

Сообщение 4epT »

conf - значит конфиг..
mconf, pconf и iconf - нефига не лучший вариант, давайте чтоб более интуитивно было:

mon...
pick...
item...

ну на крайняк
mcon, ну не как не mconf. f тут точно лишняя

Добавлено спустя 12 минут 11 секунд:

в плаге строчка:
message "MonControl plugin loaded\n", "success";
явно лишняя, ибо если он не загрузится, то явно выдастся ошибка!

а ещё нужно вбить чтоб если вводишь "mconf all 23", то выдавалась ошибка что "нет значения 23, иди читай мануал"

Добавлено спустя 3 минуты 50 секунд:
piroJOKE писал(а):А WX делал Click, он тоже новичок (сорри )
эээ чё гоните в WX-е там стоит спецом релог всех файлов, чтоб не создавать своювую менюшку для каждого файла!!

Добавлено спустя 1 час 4 минуты 6 секунд:

а вот и что-то более менее рабочее:

если мы напишем "mconf all 23", но нас пошлёт подальше..

Нужно добавить 4 строчки:

Код: Выделить всё

sub MC {
	my (undef, $args, $x, $z, @var) = @_;
	my ($cmd, $arg1, $arg2) = split(' ', $args->{input}, 3);
	if($arg1 ne "") {
		if($arg2 ne "") {
+			if ($arg2 !~ /^(-1|0|1|2|3)$/) {
+				message "Syntax Error: \nuse: <monster> <attack> \n<attack>: -1, 0, 1, 2, 3\n";
+				return;
+			}
			open(F, "<control/mon_control.txt");
			@var = <F>;
******
по аналогии нужно и с др. файлами..

кстати если по уму, то для файла mon_control нам нужно вводить ещё и $arg3, $arg4, $arg5, $arg6, $arg7, $arg8, $arg9, $arg10, ведь синтаксис:
<monster> <attack> <teleport> <search> <skillcancel> <lv> <joblv> <hp> <sp> <weight>
Быстро и качественно напишу конфиг (макрос)! Стучи!
¤ Свежий бот ¤ Config checker ¤ Manual ¤
Изображение
Изображение
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

"давайте чтоб более интуитивно было" - а давайте без "давайте"?...
имхо, команды сейчас неплохи, и чудесно запоминаюццо; не нуна их более ломать.

* * *

во-во, я тоже хотел про "all" спросить, но забыл.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
4epT
macro-маньячина
Сообщения: 2792
Зарегистрирован: Чт дек 21, 2006 1:23 pm
Сервер RO:: 4game
Discord: ya4ept#8494
Контактная информация:

Сообщение 4epT »

про all или про весть монконтрол в целом?
Быстро и качественно напишу конфиг (макрос)! Стучи!
¤ Свежий бот ¤ Config checker ¤ Manual ¤
Изображение
Изображение
Lims
Нууууп
Сообщения: 723
Зарегистрирован: Чт ноя 09, 2006 7:55 pm

Сообщение Lims »

piroJOKE
спасибо за исправления)
4epT
кстати если по уму, то для файла mon_control нам нужно вводить ещё и $arg3, $arg4, $arg5, $arg6, $arg7, $arg8, $arg9, $arg10, ведь синтаксис:
да зачем такая куча переменных. если имя моба с пробелом то может не хватить потом одной переменной, работает и пусть работает)
"if ($arg2 !~ /^(-1|0|1|2|3)$/)..." полезная штука, прилеплю. спасибо
а вы испытывали плагин?(у меня руки не дошли)
немного сомневаюсь работает ли релоад...
еще надо поставить проверку на заглавные буквы в имени моба и итемов(в items_control и mon_control с заглавной), а вот в pickupitems заглавные или маленькие надо ставить?
Аватара пользователя
4epT
macro-маньячина
Сообщения: 2792
Зарегистрирован: Чт дек 21, 2006 1:23 pm
Сервер RO:: 4game
Discord: ya4ept#8494
Контактная информация:

Сообщение 4epT »

я проверял монконтрол, единственное что не нравится, так это то чно all и aLl для него одно и тоже и в итоге она напишет aLl, что не есть харашо, тут кстате реально подредактировать чтоб он мобов нормально писал?

былобы идеально, чтоб он считай в хеш файлик monsters.txt и сверял введёную чушь с действительными именами! Кто скажет такое реально?

мы же так можем получить "встровеную" акуенную редактировалку :) в которой по ошибке не напишешь poreng, ы?

а ещё нужно добавить шляпу, чтобы если нет монстра, то он прописывался новой строчкой :)

Добавлено спустя 16 минут 56 секунд:

смотите тут плагинчек
он умеет записывать в файл нужный параметр, там меня привлекла процедура "sub iniwrite"

т.е. если её грамотно использовать , то
1. у нас сократится код плагина (процедура чтения-записи отдельная)
2. мы можем добавлять новые строчки :)
Быстро и качественно напишу конфиг (макрос)! Стучи!
¤ Свежий бот ¤ Config checker ¤ Manual ¤
Изображение
Изображение
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

"и сверял введёную чушь с действительными именами" - это излишне.
"all и aLl для него одно и тоже" - так это хорошо, так и должно работать.

Добавлено спустя 7 минут 25 секунд:

4epT, не надо излишне усложнять простые вещи.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
4epT
macro-маньячина
Сообщения: 2792
Зарегистрирован: Чт дек 21, 2006 1:23 pm
Сервер RO:: 4game
Discord: ya4ept#8494
Контактная информация:

Сообщение 4epT »

pеroJOKE, читай внимательнее: "и в итоге она напишет aLl" а это нефига не хорошо.

Если плагин будет сверять с этим файликом - этож наоборот песня будет!! никаких ошибок точно не будет!

Добавлено спустя 4 минуты 37 секунд:

кора же считывает файл monters.txt, значит все имена нахотядся у него в мозгу, часто командой не пользуешься, поэтому на быстродействие не скажется. к тому же мождо додумать, что пишешь "mconf ID n" а он те пишет правельное имя моба, ID - это единственная что связывает имена мобов в коре и дригими базами данных.

ЗЫ: как говорится ебать так королеву! :evil:
Быстро и качественно напишу конфиг (макрос)! Стучи!
¤ Свежий бот ¤ Config checker ¤ Manual ¤
Изображение
Изображение
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

А Баба Яга против.

Еще раз - королева это конешно хорошо (хотя и не факт, учитывая некоторые факторы...), а сложная, никому не нужная программа, которая еще работает как ей вздумается и считает себя умнее юзера(!) - это полный сакс.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
АндрейIV
Новичок
Сообщения: 9
Зарегистрирован: Вт дек 19, 2006 10:17 pm

Сообщение АндрейIV »

зачётная весчь. пасяп за реализацию.
З.Ы. 7z - это перебор:( а зипом низя?:)
Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse »

На Заметку....
Нужно будет поглядеть на плаг, полезно было бы его встроить в ОК.
DInvalid
Грамотный
Сообщения: 368
Зарегистрирован: Вт ноя 14, 2006 4:54 pm

Сообщение DInvalid »

Lims писал(а):еще надо поставить проверку на заглавные буквы в имени моба и итемов(в items_control и mon_control с заглавной), а вот в pickupitems заглавные или маленькие надо ставить?
Вот заф? Для красоты?
Во всех mon_control picupitems все равно используется при загрузке в память ф-я lc():
($key, $args) = lc($line) =~ /([\s\S]+?) ([\-\d\.]+[\s\S]*)/;
Т.е. ей пофиг какие там буквы- она все равно сделает все маленькие.

Что бы проверить если ли у нас уже такая строчка в файле надо проверить ее ... в памяти, нэ?

if (exist($mon_control{lc($mobname)} )) {
Аватара пользователя
DeniZka
Разработчик
Сообщения: 410
Зарегистрирован: Ср ноя 15, 2006 6:36 pm
Сервер RO:: rRO AsgardRO
Откуда: Mos-Cow Citadel
Контактная информация:

Сообщение DeniZka »

Удобная весч для бота, развивающегося по макросам.
Спасибо
Изображение
1t 1$ t00 900d d4y 2 d1e

?(???)?(???)?( ?Д?)?
Ответить