Форум работает в тестовом режиме. Все данные были перенесены со старого сайта 2018 года. Некоторая информация может быть недоступна, например вложения или хайды. Просьба сообщать о данных случаях через функционал "Жалоба", прямо под постом, где отсуствуют данные из хайда или проблемы с вложением.
Могут быть проблемы в "выкидыванием" с форума (слетевшей авторизацией). Нужно собрать статистику таких случаев.
Есть Тема, куда можете сообщить о проблемах с сайтом либо просто передать привет.

Отбиваться от мобов

Рег
14 Май 2016
Сообщения
5
Реакции
0
Доброго времени суток!
Вот на днях приобрел эту чудо программу адреналин, можете поздравить меня. :pekatroll:
При использовании сразу наткнулся на небольшой недостаток в интерфейсе, а именно: приходиться пилить скрипты, что бы наш воин после окончание баффа и смерти бегал на поле битвы и продолжал крабить мобасей. :frog:
Из того что было на разных форумах и прочтённой информации сварганил скрипт ("Я его слепила из того что было, а потом взяла и полюбила"), представьте он даже запускается без ошибок и почти все в нём исполняется :Kappa: /
А вот то что не исполняется, так это когда наш джедай бежит на ребафф в определённую точку, он не отбивается от прицепившихся мобов и дохнет на ребаффе, собака, ты @.
Вот сам скрипт:
var obj: TL2NPC;
obj2: TL2Effect;
Enemy: TL2Live;
buff: TL2buff;

procedure buffOK; //Процедура проверки ребаффа и включение интерфейса (автоатака)
begin
if User.Buffs.ById(4699,buff) and (Buff.EndTime>100000) and user.inrange(-51928, 80200, -4720,300,50) then
Engine.Facecontrol(1,True);
delay(1000);
end;

procedure GoGk; //Процедура пути к ГК и разговор с ним
begin
if user.inrange (10456,16971,-4610,25000,500) then
begin
engine.MOVETO(10456,16971,-4610);
engine.MOVETO(10055,16586,-4601);
engine.MOVETO(9690,15563,-4601);
Engine.SetTarget(30134);
Engine.DlgOpen;
Engine.DlgSel(2);
Engine.DlgSel(11);
delay(6000);
end;
end;

procedure RebuffOnTheVillage; //Процедура ребаффа в городе
begin
if not User.Buffs.ById(176, buff) or (Buff.EndTime<60000) and //Проверка на наличие баффа или остаток времени этого баффа
user.inrange (11320, 16888, -4640,50000,5000) then
delay(15000);
GoGK; //Процедура пути к ГК и разговор с ним
end;

procedure RebuffOnTheFarmZone; //Процедура ребаффа на месте фарма
begin
if not User.Buffs.ById(176, buff) or (Buff.EndTime<60000) then //Проверка на наличие баффа или остаток времени этого баффа
Engine.Facecontrol(1,False); //Вырубаем интерфейс №1 (автоатака)
delay(1000);
if user.inrange (-50056, 81192, -4720,1000,500) then //Путь к месту ребаффа
begin
engine.moveto(-51928, 81176, -4720);
engine.moveto(-51928, 80200, -4720);
end;
if user.inrange (-51928, 81912, -4720,400,300) then
begin
engine.moveto(-51928, 81176, -4720);
engine.moveto(-51928, 80200, -4720);
end; //Путь к месту ребаффа
delay(60000); //Даём время на путь к месту ребаффа и на сам ребафф
buffOK; //Процедура проверки наличия последего баффа
print('Ждем подтверждения');
end;

begin //Зацикленное тело
while User.Level < 80 do //Зациклен (уровень персонажа ниже 80)
begin //Проверка на смерть
if User.Dead then
begin
Engine.gohome;
Engine.FaceControl(1,false);
delay(15000);
end; //Проверка на смерть
if (not User.Target.Dead) and (User.target <> nil) then //Отбиваться от мобов по пути
begin
Engine.Attack;
delay(1000);
end;
if (User.Target.Dead) and (User.target <> nil) then
begin
Engine.CancelTarget;
delay(1000);
end; //Отбиваться от мобов по пути
if not User.Buffs.ById(176, buff) or (Buff.EndTime<60000) then //Проверка на ребаффа в катах
begin
RebuffOnTheFarmZone; //Процедура ребаффа на фарм зоне
end;
if not User.Buffs.ById(176, buff) or (Buff.EndTime<60000) and //Проверка на ребаффа в городе
user.inrange (11320, 16888, -4640,50000,5000) then //Проверка на ребаффа в городе
begin
RebuffOnTheVillage; //Процедура ребаффа в городе
end;
if user.inrange (10456,16971,-4610,25000,500) then //Проверка наличие персонажа в городе
begin
goGK; //Процедура пути к ГК и разговор с ним
end;
if user.InRange(-53034, 79073, -4720,300,300) then //Телепорт в катах
begin
Engine.MoveTo(-53034, 79073, -4720);
Engine.MoveTo(-52792, 79096, -4720);
Engine.SetTarget(31099);
Engine.DlgOpen;
Engine.DlgSel(1);
end; //Телепорт в катах
if user.InRange(-52254, 79103, -4720,300,300) then //Бежим к нужной комнате
begin
Engine.MoveTo(-52254, 79103, -4720);
Engine.MoveTo(-51944, 79112, -4720);
Engine.MoveTo(-51928, 79880, -4720);
Engine.MoveTo(-51928, 80472, -4720);
Engine.FaceControl(1,true);
delay(6000);
end; //Бежим к нужной комнате
end;
end.

Скрипт делал почти с нуля, логико интуитивным методом и потерянными процентами джедая :dadada:
Как сделать что бы при беге на точку ребаффа он отгатил всех мобов прицепившехся на хвост?

Вот этот кусок кода я нашёл на какому то форуме, но что то он не работает, или по крайне мере я не заметил этого, так как падал от мобов по приходу на точку ребаффа.

if (not User.Target.Dead) and (User.target <> nil) then //Отбиваться от мобов по пути
begin
Engine.Attack;
delay(1000);
end;
if (User.Target.Dead) and (User.target <> nil) then

Возможно вы мне подкинете каких то идеё как это реализовать, возможно этот скрипт можно вообще проще сделать в 2 раза короче и проще?
Заранее благодарен!
 
@YouNext, Это уже тысячи раз обсуждалось ну да ладно !
Во первых не правильная работа скрипта ,в первую очередь из-за того ,что ты не сам его писал а лепил из всего что только можно
Во вторых из-за того ,что писал опять таки не сам ,есть некое недопонимание как реализовать то чего ты хочешь !
Нужно понять что любое построение скрипта нужно начать с построения алгоритма
Алгоритм — это понятное и точное предписание исполнителю, выполнить конечную последовательность шагов, приводящей от исходных данных к искомому результату.
Построив алгоритм можно перейти к построению блок схем
Блок-схема — графическое представление алгоритма. Она состоит из функциональных блоков, которые выполняют различные назначения (ввод/вывод, начало/конец, вызов функции и т.д.).


1231 (1).jpg


с примером if

if5.jpg

Построй с нуля ислользуя примеры и возможности бота
Так же по поводу сброса паровоза !Реализовать можно через загрузку конфигов в которых чар будет отбиваться от всех кто прицепиться по пути
 

Вложения

  • ScriptsHelp.pdf
    1.5 MB · Просмотры: 12
Назад
Сверху