Page 1 of 1

хмм, помогите со скриптом - рыбалка

Posted: 2005-01-02 03:42:49
by DePawlur
вот скрипт: (Скрипт взят с этого форума!!!)

Code: Select all

sub fishing() 
var mx, my, mz, i, j
uo.print('À ãäå âåäðî?')
uo.exec('addobject Bag')
while uo.targeting()
wait(100)
wend

mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
UO.DeleteJournal()
for i = mx-6 to mx+6
for j = my -6 to my+6
if UO.dead() then
return
endif

UO.Print("Now Fishing In: "+str(mx-i)+" "+str(my-j))
while not UO.InJournal("Çäåñü áîëüøå íåò ðûáû...") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("Â ýòîì ìåñòå íåëüçÿ ëîâèòü ðûáó!")
UO.DeleteJournal()
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Usetype("0x0DC0") ;FishingPole
if UO.dead() then
return
endif
if UO.Weight>660 then
return
endif
while not UO.InJournal("You pull") and not UO.InJournal("location") and not UO.InJournal("Çäåñü áîëüøå íåò ðûáû...") and not UO.InJournal("but fail") and not UO.InJournal("invalid object") and not UO.InJournal("Â ýòîì ìåñòå íåëüçÿ ëîâèòü ðûáó!")
wait (100)
if UO.InJournal("You pull") then
UO.SetReceivingContainer('Bag')
UO.findtype('0x09CB','0x0000','ground')
UO.grab ('5','finditem')
wait (100)

UO.UnSetReceivingContainer()
end if
wend
wend
UO.DeleteJournal()
next
next
end sub


Моя задача состоит в том, чтобы сделать
if not UO.findtype('0x09CB','0x0000','ground') then
и он должен начинать рыбачить в следующем квадрате...
помогите пожалуйста, а то я никак не соображу?

Re: хмм, помогите со скриптом - рыбалка

Posted: 2005-01-02 09:03:34
by AGRS

Code: Select all

while not UO.InJournal("Çäåñü áîëüøå íåò ðûáû...") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("Â ýòîì ìåñòå íåëüçÿ ëîâèòü ðûáó!") 

заменить на

Code: Select all

UO.findtype('0x09CB','0x0000','ground')
while not UO.InJournal("Çäåñü áîëüøå íåò ðûáû...") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("Â ýòîì ìåñòå íåëüçÿ ëîâèòü ðûáó!") and (UO.FindCount>0)



а еще


Code: Select all

end if 
wend
wend

заменить на

Code: Select all

end if 
wend
UO.findtype('0x09CB','0x0000','ground')
wend

Posted: 2005-01-04 14:56:35
by DePawlur
Объясни пожалуйста, как ты посылаешь Code?
Я пошлю то - что получилось, хотя у мен ничего не получилось, но ты хотябы мои ошибки посмотришь... заранее благодарен

Posted: 2005-01-04 22:20:40
by joker_psix
типа начало [cоde] и конец [/cоde]

Posted: 2005-01-05 20:16:37
by DePawlur
вобщем у меня какая - то каша -малаша получилась. Я сделал всё как AGRS посоветовал но Инжект пишет: line xx: variable undefined - UO.FINDCOUNT
Может можно указать тип и цвет, типа "uo.findcount('0x0000', '0x0000')"?
Или это потому что на земле не лежит ни одного предмета запрашиваемого типа?
Или может нужно указать число перед findcount'ом?
Помогите пожалуйста... может у кого есть и другие предложения, насчёт скрипта... я пока его попытаюсь доработать.... joker_psix спасибо за Code!

Posted: 2005-01-05 20:24:34
by AGRS
Верно подмечено. ))

(UO.FindCount>0) замени на (UO.FindCount()>0)

Это у меня хроническое. :lol: :oops:

Posted: 2005-01-05 20:42:27
by DePawlur
Хмм... работать начало... но по моему не корректно, т.к. он весь скрипт за секунду прогоняет....
я вот как сделал...
я вот сюда:

Code: Select all

while not UO.InJournal("Çäåñü áîëüøå íåò ðûáû...") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("Â ýòîì ìåñòå íåëüçÿ ëîâèòü ðûáó!")

в 21й строке добавил:

Code: Select all

while not UO.InJournal("Çäåñü áîëüøå íåò ðûáû...") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("Â ýòîì ìåñòå íåëüçÿ ëîâèòü ðûáó!") and not UO.InJournal("where")

Т.Е. он после заброса удочки проверяет, поймал - непоймал, а потом сразуже закидывает в следующий квадрат... но моя задача - ловить только эту редкую рыбёшку... иногда он её не с первого раза ловит, и по этому скрипт не слишком мне подходит... смотрите, проверяйте,..