![]() |
|
Макросы и Плагины Всё что относится к макросам и плагинам. Сборник готовых макросов. |
![]() |
|
Опции темы | Опции просмотра |
![]() |
#1 |
Админ
|
![]()
Рай для сагов..
Для работы плагина у вас должен быть: 1. Скил Free cast 1 левела или выше 2. В конфиге: attackUseWeapon 1 3. должен быть настроен attackSkillSlot
__________________
¤Config checker¤Руководство¤Файлы¤Конфиги¤Макросы¤ Быстро и качественно напишу конфиг (макрос) за yAD! Стучи! ![]() |
![]() |
![]() |
![]() |
#2 |
Нюб делает первые шаги
Регистрация: 19.02.2007
Сообщений: 6
Вы сказали Спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
![]()
при загрузки этого плагина бот выдает ошибку.. может я сделал что то не так
![]() я я просто кинул его в папку плагинс |
![]() |
![]() |
![]() |
#3 |
Админ
|
![]()
скорее всего этот плагин под старую версию коры
__________________
¤Config checker¤Руководство¤Файлы¤Конфиги¤Макросы¤ Быстро и качественно напишу конфиг (макрос) за yAD! Стучи! ![]() |
![]() |
![]() |
![]() |
#4 |
Нюб делает первые шаги
Регистрация: 19.02.2007
Сообщений: 6
Вы сказали Спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
![]()
просто старую поставить?
|
![]() |
![]() |
![]() |
#5 |
Нюб делает первые шаги
|
![]()
старую не поставишь, работать не будет вообще. тут надо её как то доделать до последней версии коры. только хз как. те, кто умеет делать не хотят, а те кто не умеет, те не могут сделать))
|
![]() |
![]() |
![]() |
#6 |
Админ
|
![]()
__________________
¤Config checker¤Руководство¤Файлы¤Конфиги¤Макросы¤ Быстро и качественно напишу конфиг (макрос) за yAD! Стучи! ![]() |
![]() |
![]() |
![]() |
#7 |
Нюб делает первые шаги
|
![]()
Наконец то! долбил, я freecast.pl для Сага, долбил и сделал) и всё РАБОТАЕТ ТЕПЕРЬ!
Значит так, обьясню что я сделал, что плагин заработал. Ну сначало просто скинул freecast.pl в соответствующую папку, попробовал не идёт пишет ошибку (см. скрин). ![]() И обратил внимание на выделеную уже мной строчку с надписью "line 18" Дальше открыл в DzSoft Perl Editor этот файл, нашёл эту строчку(см второй скрин 18 строчка выделенная). ![]() Ну я и подумал, раз в этом дело, может там что то поменять?) я в настройках и созданиях плагинов полный нуб, поэтому стал просто всячески издеваться над словом Skills. Ну и проверял постоянно. И ВДРУГ когда я просто стёр последнюю букву "s", сохранения и запуска бота, саг ЗАРАБОТАЛ! Значит причина была в этой строчке. Можно сказать мну повезло) и я рад) Скидываю файл для других, пусть пользуются) freecast.rar (ссылка на Рофан форум) package freeCast; # This plugin is licensed under the GNU GPL # Copyright 2005 by kaliwanagan # -------------------------------------------------- # How to install this thing..: # # The plugin will activate iff: # you have the skill free cast at level 1 or higher, and # attackUseWeapon is set to 1, and # you are using an attackSkillSlot that has a cast bar use strict; use Plugins; use Globals; use Log qw(message warning error); use AI; use skill; use Misc; use Network; use Network::Send; use Utils; use Math::Trig; Plugins::register('Free Cast', 'experimental sage free cast support', \&Unload); my $hook1 = Plugins::addHook('AI_post', \&call); my $ID; my $monster; my %timeout; sub Unload { Plugins: ![]() } sub call { my $i = AI::findAction("attack"); if (defined $i) { my $args = AI::args($i); $ID = $args->{ID}; $monster = $monsters{$ID}; } if (AI::action eq "skill_use") { cast(); } } sub cast { if (($config{'attackUseWeapon'}) && ($char->{skills}{SA_FREECAST}{lv}) && main::timeOut(\%timeout)){ if(Utils: ![]() sendAttack(\$main::remote_socket, $monster->{ID}, ($config{'tankMode'}) ? 0 : 7); } else { my %attackhash = getAttackCoords(main::calcPosition($monster), main::calcPosition($char), ($config{"attackDistance"} - 1)); sendMove(\$main::remote_socket, $attackhash{x}, $attackhash{y}); } } $timeout{time} = time; $timeout{timeout} = 1; } sub getAttackCoords { my ($obj1, $obj2, $distance) = @_; my %attack; if ($$obj1{x} == $$obj2{x}) { $attack{x} = $$obj2{x}; $attack{y} = ($$obj1{y} > $$obj2{y}) ? $$obj2{y} + $distance : $$obj2{y} - $distance; return %attack; } if ($$obj1{y} == $$obj2{y}) { $attack{y} = $$obj2{y}; $attack{x} = ($$obj1{x} > $$obj2{x}) ? $$obj2{x} + $distance : $$obj2{x} - $distance; return %attack; } my $ang = atan(($$obj1{y} - $$obj2{y}) / ($$obj1{x} - $$obj2{x})); $attack{x} = ($$obj1{x} > $$obj2{x}) ? $$obj2{x} + ($distance * cos($ang)) : $$obj2{x} - ($distance * cos($ang)); $attack{y} = ($$obj1{y} > $$obj2{y}) ? $$obj2{y} + ($distance * sin($ang)) : $$obj2{y} - ($distance * sin($ang)); return %attack; }; return 1; И доказательство работы плагина ![]() Последний раз редактировалось AndreyLun; 03.12.2007 в 21:02. |
![]() |
![]() |
![]() |
#8 |
Админ
|
![]()
вообще-то я неменал на то, чтобы ты написал что-то типо мануальчика, т.е. чё куда написать (запихнуть) чтоб всё работало и что иммено этот плагинчек делает
![]() незнаю на сколько это критично, но в строках 25,26 должны быть слэши, т.е. не &Unload и &call, а \&Unload и \&call
__________________
¤Config checker¤Руководство¤Файлы¤Конфиги¤Макросы¤ Быстро и качественно напишу конфиг (макрос) за yAD! Стучи! ![]() |
![]() |
![]() |
![]() |
#9 |
Нюб делает первые шаги
|
![]()
плагин буду переделывать, поспешил я, он работает только при лижней атаке, т.е. для батл сага с автокастом(может и кастить и атачить одновременно). Скиньте ссылки на учебники по созданию плагинов на рус. языке плиз, буду заново создавать операясь на старый плагин.
|
![]() |
![]() |
![]() |
#10 | |
Админ
|
![]()
а он должен работаеть ещё и для дяльних атак?
Цитата:
__________________
¤Config checker¤Руководство¤Файлы¤Конфиги¤Макросы¤ Быстро и качественно напишу конфиг (макрос) за yAD! Стучи! ![]() |
|
![]() |
![]() |