Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Непрерывный подхил чара

Only working scripts
Post Reply
Edred
Moderator
Moderator
Posts: 559
Joined: 28.03.2006 21:29

Непрерывный подхил чара

Post by Edred »

Code: Select all

Program SparringHeal;
// Непрерывный подхил чара во время боя и во время ожидания.
// Сброс кровавых бинтов и подбор с пола чистых.
// (Для шарда Forest Wars. Особенность: новое использование бинтов
// только после завершения предыдущего использования. Оружие
// из рук не выпадает.)
// v.1.00b (c) Edred

{$Include 'all.inc'}

var
ctime : TDateTime;
k : integer;

const
Bint=$0E21;
BlBint=$0E20;

Begin
	FindDistance:=2;
	while not Dead do
	begin
		if (Count(Bint) = 0) then
		begin
			// доберем бинтов и сбросим кровавые
			FindType(Bint, Ground);
			if (FindCount > 0) then
			begin
				Grab(finditem,20);
				wait(1000);
			end
			else
			begin
				addtosystemjournal('Не нашел бинтов! Подложите на пол!');
				repeat
					wait(500)
					FindType(Bint, Ground);
				until (FindCount > 0);
				Grab(finditem,20);
				wait(1000);
			end;
			FindType(BlBint, Backpack);
			while (FindCount > 0) do
			begin
				Drop(finditem,0,0,0,0);
				wait(1000);
				FindType(BlBint, Backpack);
			end;
		end;
		// лечимся до восстановления здоровья
		while (HP < MaxHP) and (Count(Bint) > 0) do
		begin
			FindType(Bint, Backpack);
			if TargetPresent then CancelTarget;
			ctime := Now;
			UseObject(FindItem);
			WaitForTarget(5000);
			If TargetPresent then TargetToObject(Self);
			k := 0;
			repeat
				wait(100);
				k := k + 1;
			until (InJournalBetweenTimes('You put the bloody bandage|failed.', ctime, Now)<>-1) or (k > 300);
		end;
	end;
End.
-=JoKeR=-
Novice
Novice
Posts: 153
Joined: 10.02.2008 11:19
Location: [Forest Wars] Ode$$a

Post by -=JoKeR=- »

Этот скрипт вызывает загрузку процессора на 100%
заменил только сброс кровавых бинтов на их мытьё

Code: Select all

         FindType(BlBint, Backpack); 
         while (FindCount >= 20) do 
         begin 
			findtype(BlBint,backpack);
			useobject(FindItem);
			checksave;
			waitfortarget(5000);
			if TargetPresent then TargetToObject(WaterID);
			wait(1000)
			addtosystemjournal('Вымыл бинты');
         end; 
-=JoKeR=-
Novice
Novice
Posts: 153
Joined: 10.02.2008 11:19
Location: [Forest Wars] Ode$$a

Post by -=JoKeR=- »

Кто-то знает решение этой проблемы ?
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Post by Fenix »

Для начала поведай нам о результатах работы скрипта. Он чара хилит? Бинты новые подбирает? Кровавые бинты отмывает? Какие отладочные сообщения выводит в журнал?
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
Post Reply