Страница 2 из 7

Добавлено: Сб дек 22, 2007 2:01 pm
Kissa2k
piroJOKE писал(а):Еще одна мелочь - ты похерил табуляции в коде, он плохо теперь читаеццо. "Нетоварный вид".
оффтоп
В Anjuta (IDE для C/C++) это называется Hello World style :ROFL:

Добавлено: Сб дек 22, 2007 2:10 pm
Lims
*по секрету* у меня он изначально назывался PifPaf
расставил табы, только вот толку от них... может я не правильно расставил. Все теперь он именуется xConf

Добавлено: Сб дек 22, 2007 2:37 pm
piroJOKE
чуть-чуть переиначил плагин, посмотри плз.

если честно, то я не понял прикола с sub {...} ...?

Добавлено: Вс дек 23, 2007 4:29 am
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>

Добавлено: Вс дек 23, 2007 6:12 pm
piroJOKE
"давайте чтоб более интуитивно было" - а давайте без "давайте"?...
имхо, команды сейчас неплохи, и чудесно запоминаюццо; не нуна их более ломать.

* * *

во-во, я тоже хотел про "all" спросить, но забыл.

Добавлено: Пн дек 24, 2007 2:12 am
4epT
про all или про весть монконтрол в целом?

Добавлено: Пн дек 24, 2007 7:08 am
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 заглавные или маленькие надо ставить?

Добавлено: Вт дек 25, 2007 5:03 am
4epT
я проверял монконтрол, единственное что не нравится, так это то чно all и aLl для него одно и тоже и в итоге она напишет aLl, что не есть харашо, тут кстате реально подредактировать чтоб он мобов нормально писал?

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

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

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

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

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

т.е. если её грамотно использовать , то
1. у нас сократится код плагина (процедура чтения-записи отдельная)
2. мы можем добавлять новые строчки :)

Добавлено: Вт дек 25, 2007 11:55 am
piroJOKE
"и сверял введёную чушь с действительными именами" - это излишне.
"all и aLl для него одно и тоже" - так это хорошо, так и должно работать.

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

4epT, не надо излишне усложнять простые вещи.

Добавлено: Ср дек 26, 2007 6:24 am
4epT
pеroJOKE, читай внимательнее: "и в итоге она напишет aLl" а это нефига не хорошо.

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

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

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

ЗЫ: как говорится ебать так королеву! :evil:

Добавлено: Ср дек 26, 2007 1:27 pm
piroJOKE
А Баба Яга против.

Еще раз - королева это конешно хорошо (хотя и не факт, учитывая некоторые факторы...), а сложная, никому не нужная программа, которая еще работает как ей вздумается и считает себя умнее юзера(!) - это полный сакс.

Добавлено: Вс дек 30, 2007 3:09 am
АндрейIV
зачётная весчь. пасяп за реализацию.
З.Ы. 7z - это перебор:( а зипом низя?:)

Добавлено: Чт янв 03, 2008 10:58 am
kLabMouse
На Заметку....
Нужно будет поглядеть на плаг, полезно было бы его встроить в ОК.

Добавлено: Вт янв 08, 2008 5:12 am
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)} )) {

Добавлено: Вт янв 08, 2008 11:06 pm
DeniZka
Удобная весч для бота, развивающегося по макросам.
Спасибо