Page 1 of 1

прошу помощи по скрипту на таминг

Posted: 03.10.2011 14:34
by un.k
есть вот такой скрипт

Code: Select all

program taming; 

var 
CRITICAL_HP:cardinal;
ctime : TDateTime; 

{$Include 'all.inc'} 

Const
animalType = $0027; 
BandageType = $0E21; 


Begin 
ctime := Now; 
CRITICAL_HP:=50;


   While not Dead do 
   	if (inJournalBetweenTimes('You see: a mongbat', ctime, Now)<>-1) then 
   		begin
                	FindDistance := 2;
			SetWarMode(false);
			if TargetPresent then CancelTarget; 
			CheckTargetError(5,2);
	        	CheckSave; 
	        	repeat
	        	ctime := Now; 
			UseSkill('Animal Taming'); 
			WaitTargetGround(animalType);
			wait(10000);
			until (inJournalBetweenTimes('That creature looks pretty tame already', ctime, Now)<>-1)
		end;
   	if (inJournalBetweenTimes('That creature looks pretty tame already', ctime, Now)<>-1) then
		begin		
			FindDistance :=2;
			setWarMode(true);
			if TargetPresent then CancelTarget; 
			CheckTargetError(5,2);
	        	CheckSave; 
			attack(animalType);
			wait(10000);
		end;

  	if (HP>=CRITICAL_HP) then 
		begin 
	  		UseObject(FindType($0E21, BackPack));
             		waittargetobject(self);
             		wait(3000);
		end;      
		
		
end.
Смысл таков - видит дич, тамит ее, когда затамил убивает, и еще проверяет здоровье.
Но почему-то убивать у меня не хочет.
Что я делаю не так ? 8(

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 14:40
by un.k
еще было бы интересно забирать с трупа после убийства лут.

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 15:17
by MuDaCk

Code: Select all

WaitTargetGround(animalType);
:shock:
Твой скрипт затеймливает зверушку?


Твоя проблема, что ты атачишь не ИД, а тип.

Code: Select all

attack(animalType);

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 16:21
by un.k
un.k wrote:Твой скрипт затеймливает зверушку?
затаймливает и все на этом.
MuDaCk wrote:Твоя проблема, что ты атачишь не ИД, а тип.
ну ИД у каждой новой зверушки будет новый, это получается его нужно как то получать во время приручения, запоминать, потом атачить, потом по новой, как? )

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 16:59
by un.k
MuDaCk wrote:

Code: Select all

WaitTargetGround(animalType);
:shock:
Твоя проблема, что ты атачишь не ИД, а тип.

Code: Select all

attack(animalType);
причем если немного поменять расположение некоторых пунктов, он мочит зверушку пока она незатаймлена, как только затаймливается - перестает атачить.

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 17:03
by MuDaCk

Code: Select all

attack(findtype(animalType,ground));

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 17:32
by un.k
MuDaCk wrote:Код:
attack(findtype(animalType,ground));
тоже не атачит.

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 17:35
by MuDaCk
у других атачит, а у тебя не атачит)))
тогда пробуй атачить через Ид) сразу узнавай Ид, записывай в переменную и уже атачь переменную.

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 18:00
by un.k
MuDaCk wrote:у других атачит, а у тебя не атачит)))
я же говорю, если строчки с атакой забить сразу же после until, тогда он атачит, пока дич красная, как только затамил перестаёт. И атачит по типу.

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 18:29
by SaNeK
атачить он должен увидев в журнале That creature looks pretty tame already.
Возможно не видит это сообщение, потому в условие добавить надо AddToSystemJournal('Атаканул'); вставить гдето перед атакой. И посмотреть выполняет ли скрипт это условие. Если выполняет то получишь в сист журнал сообщение "атаканул". Хотя думаю, что скорее не выполняется условие

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 18:36
by SaNeK
и еще дистанция FindDistance , таймит при обычной (вроде база 14) а атаковать в радиусе 2 клетки, может животное дальше?

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 20:49
by Lietman

Code: Select all

findtype(animalType,ground);
attack(FindItem);
так по пробуй

Re: прошу помощи по скрипту на таминг

Posted: 03.10.2011 21:43
by MuDaCk
Как у него может атачить???

Code: Select all

attack(animalType);

Re: прошу помощи по скрипту на таминг

Posted: 04.10.2011 11:32
by Fenix
Надо переписать скрипт по-человечески.
Пусть определяет наличие объекта для приручения не по сообщению в журнале, а по типу объекта (при необходимости можно потом проверять имя объекта). Уже потом таймить по ID найденого объета, а после затаймливания по этому же ID и гасить его.