PDA

Просмотр полной версии : вопрос по возможностям макросов


Verdammt
07.02.2008, 09:27
Люди, подскажите пожалуйста
Есть ли в макросах такое понятие как массив
в мануалах нашел только вот такое
$list = element one,element two,foo,bar,baz
как получить определенный элемент?
$var = [$list] так можно получить только первый... а остальные?

и еще такая штука
@arg ("<набор_слов>", <n>)
но проблема в том что <n> должно быть значением, а переменную вставить нельзя..((

может я чегонить не до понял.. на опенкоре тоже перерыл - ничего не нашел...
подскажите пожалуйста..

Суть в том что мне нужно иметь массив, и иметь возможность получить из него определенный элемент
допустим
$array = v1, v2, v3, v4
$i = 2
log $array[$i]
чтот в этом роде

Женя
07.02.2008, 12:06
поясни, что ты будешь с этим делать? чего добиваешься?

Verdammt
07.02.2008, 15:14
ну допустим хочу сменять аккаунты по прошествию определенного времени...
есть допустим массив с аккаунтами и массив с паролями
$acc = a1, a2, a3
$pass = p1, p2, p3
$i = 1

do conf username $acc[$i]
do conf password $pass[$i]

проходит какое то время..

$i++
do conf username $acc[$i]
do conf password $pass[$i]
do relog 1

вот что-то в этом роде...
можно это конечно реализовать с помощью кучи if`ов.. но енто так коряво и грамоздко будет((

vitt
07.02.2008, 19:14
ну допустим хочу сменять аккаунты по прошествию определенного времени...
на рофане ДениЗка выкладывал такой плагин(смена акка при бане, джайле, молчанке). Если его немного подправить, то можно сделать, чтоб он через определенное время менял.
http://rofan.ru/viewtopic.php?t=4515

4epT
07.02.2008, 20:30
vitt, прав, там если хорошенько покопаться, то можно отсеить ненужный кусок, а остаить только процедуру считывания с файла инфы "логин=пасс".

Там фишка в том, что плагин использованные логин=пасс перемещает в отдельный файл, когда файл пустой, то кора закроется, так вот тут нада прописать чтобы кора начала считывание логин=пасс с того самого отдельного файла..

этакие песочные часики получатся ;)

Verdammt
08.02.2008, 02:33
ок.. ну с ентим понятно..
т.е. я как понял массивов в макросах как таковых нет?..

и получается чтонибуть "мудренное" надо писать через плагины?

4epT
08.02.2008, 20:09
естественно, что лучше плагинчеком ;)

или делай пасс одним и тем же.

Verdammt
11.02.2008, 03:32
Кажется придумал как можно сделать ))

в файле config.txt прописываем переменные

accounts {
user 1
pwd 1
}

accounts {
user 2
pwd 2
}

accounts {
user 3
pwd 3
}

и потом можно вызывать их таким образом
macro test{
$i = 1
log @config (accounts_$i_user)
log @config (accounts_$i_pwd)
}

так что получается чтот вроде массива)

PS по поводу плагинов...

попробовал первый пример

package HelloWorld;
use strict;
print "Hello World!\n";
1;

текст в визуальной коре не выводится чтоль??

PPS
и еще вопрос... можно ли избавиться от отображения этой строки??
[macro] automacro ATimer triggered.
она всплывает когда срабатывает автомакрос...