uses SysUtils, Classes;
//..check death
function CheckDeath: Boolean;
begin
Result := false;
if User.Dead then
begin
//..turn off bot
Engine.FaceControl(0,false);
Print('Bot Umer');
Delay(1000);
//..go gome
Engine.GoHome;
Delay(10000);
Result := true;
end;
end;
procedure runner;
begin
print('runner');
if User.inrange(110768, 219824, -3648, 250, 150) then
begin
print('checkzone npc');
//..menu home alt+b
Engine.BypassToServer('_bbshome', True);
delay(1000);
//..menu buff
Engine.BypassToServer('_bbsbuff', True);
delay (1000);
//..call buff macro
Engine.BypassToServer('_bbsbuff:hotbuff buff_index Player 1_buffSet_1', True);
delay(2000);
//..go to npc in Heine
Engine.SetTarget(32318);
Engine.MoveToTarget(-20);
//..call dialog
Engine.DlgOpen();
delay(2000);
//..call TP to HB
Engine.DlgSel(01);
delay(10000);
//..move on HB
if User.inrange(-11272, 236464, -3248, 250, 150) then
begin
print('go to farm');
Engine.MoveTo(-11969, 236631, -3248);
Engine.MoveTo(-13144, 236920, -3264);
Engine.MoveTo(-14632, 237176, -3328);
Engine.MoveTo(-15976, 237416, -3376);
Engine.MoveTo(-17464, 237736, -3312);
Engine.MoveTo(-18168, 237848, -3192);
Engine.MoveTo(-19128, 238552, -2896);
Engine.FaceControl(0,true);
end;
end
else
begin
Engine.UseItem(7128);
delay(25000);
runner();
end;
end;
begin
Print('Start');
runner();
while (True) do
begin
delay(30000);
if CheckDeath() then
begin
Print('On death');
Engine.UseItem(7128);
delay(25000);
runner;
end;
end;
end.
//..check death
function CheckDeath: Boolean;
begin
Result := false;
if User.Dead then
begin
//..turn off bot
Engine.FaceControl(0,false);
Print('Bot Umer');
Delay(1000);
//..go gome
Engine.GoHome;
Delay(10000);
Result := true;
end;
end;
procedure runner;
begin
print('runner');
if User.inrange(110768, 219824, -3648, 250, 150) then
begin
print('checkzone npc');
//..menu home alt+b
Engine.BypassToServer('_bbshome', True);
delay(1000);
//..menu buff
Engine.BypassToServer('_bbsbuff', True);
delay (1000);
//..call buff macro
Engine.BypassToServer('_bbsbuff:hotbuff buff_index Player 1_buffSet_1', True);
delay(2000);
//..go to npc in Heine
Engine.SetTarget(32318);
Engine.MoveToTarget(-20);
//..call dialog
Engine.DlgOpen();
delay(2000);
//..call TP to HB
Engine.DlgSel(01);
delay(10000);
//..move on HB
if User.inrange(-11272, 236464, -3248, 250, 150) then
begin
print('go to farm');
Engine.MoveTo(-11969, 236631, -3248);
Engine.MoveTo(-13144, 236920, -3264);
Engine.MoveTo(-14632, 237176, -3328);
Engine.MoveTo(-15976, 237416, -3376);
Engine.MoveTo(-17464, 237736, -3312);
Engine.MoveTo(-18168, 237848, -3192);
Engine.MoveTo(-19128, 238552, -2896);
Engine.FaceControl(0,true);
end;
end
else
begin
Engine.UseItem(7128);
delay(25000);
runner();
end;
end;
begin
Print('Start');
runner();
while (True) do
begin
delay(30000);
if CheckDeath() then
begin
Print('On death');
Engine.UseItem(7128);
delay(25000);
runner;
end;
end;
end.
Доброе время суток форумчане!
Перед тем как спросить долго сам просматривал код но так и не нашел из-за чего бот при свернутом окне не хочет выполнять некоторые рендомные куски скрипта. если у кого то есть время посмотреть и подсказать буду очень признателен.
Мне кажется, что вся загвоздка именно в куске там где чар должен релогаться. Пытался сделать со вторым потоком на смерть но команда из этой темы http://rawr.su/topic/2577-proverka-na-smert-i-perezapusk-skripta/ставила скрипт на паузу так и не выводя его из нее (..
З.Ы. Заранее спасибо за любую помощь !