Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
const
CHECKED_BUFF = 1035; // ID отсутствующего баффа для запуска скрипта ребаффа.
END_BUFF = 10; // Формула END_BUFF * (60*1000). Запуск скрипта ребаффа при оставшемся времени баффа в 10 минут.
function CheckAgr() : boolean;
var
num : integer;
begin
result := false;
for num := 0 to NpcList.Count - 1 do
if (NpcList.Items(num).Target = User) and not (NpcList.Items(num).Dead) then begin
result := true;
exit;
end;
end;
procedure GetBuff();
begin
Engine.CancelTarget();
Engine.ByPassToServer('_bbsbuffer');
Delay(1500);
Engine.ByPassToServer('_bbsbufferbypass_giveBuffSet tank 0 0'); // Танк схема для использования скриптом.
end;
procedure AutoBuff();
var
buff : TL2Buff;
begin
while true do begin
User.Buffs.ByID(CHECKED_BUFF, buff);
if (buff.EndTime < (END_BUFF * (60*1000))) and (not CheckAgr()) then begin
Engine.FaceControl(0, false);
while User.InCombat do begin
Delay(1000);
if CheckAgr() then break;
end;
if not User.InCombat() then GetBuff();
Engine.FaceControl(0, true);
end;
Delay(1000);
end;
end;
begin
Script.NewThread(@AutoBuff);
Delay(-1);
end.
const
CHECKED_BUFF = 1035; // ID of missing buff to run rebuff script.
END_BUFF = 10; // Formula END_BUFF * (60*1000). Run rebuff script when buff time remaining is 10 minutes.
function CheckAgr() : boolean;
var
num : integer;
begin
result := false;
for num := 0 to NpcList.Count - 1 do
if (NpcList.Items(num).Target = User) and not (NpcList.Items(num).Dead) then begin
result := true;
exit;
end;
end;
procedure GetBuff();
begin
Engine.CancelTarget();
Engine.ByPassToServer('_bbsbuffer');
Delay(1500);
Engine.ByPassToServer('_bbsbufferbypass_giveBuffSet tank 0 0'); // Tank scheme for use by script.
end;
procedure AutoBuff();
var
buff : TL2Buff;
begin
while true do begin
User.Buffs.ByID(CHECKED_BUFF, buff);
if (buff.EndTime < (END_BUFF * (60*1000))) and (not CheckAgr()) then begin
Engine.FaceControl(0, false);
while User.InCombat do begin
Delay(1000);
if CheckAgr() then break;
end;
if not User.InCombat() then GetBuff();
Engine.FaceControl(0, true);
end;
Delay(1000);
end;
end;
begin
Script.NewThread(@AutoBuff);
Delay(-1);
end.