Page 1 of 1
Выдаём в окно кол-во и название логов находящихся в паке
Posted: 2006-09-28 04:13:26
by Scripts Writer
Возможно кому то понадобится.
Code: Select all
sub Get_Logs_Count()
var type='0x1BDD'
var i
uo.FindType(type,'-1','backpack')
uo.TextClear()
for i = 0 to uo.FindCount() - 1
uo.FindType(type,'-1','backpack')
uo.Click('finditem')
uo.Print(uo.GetName('finditem'))
wait(100)
uo.TextOpen()
uo.TextPrint(uo.GetName('finditem'))
uo.Ignore('finditem')
next
uo.IgnoreReset()
end sub
Считаем логи в паке, выдавая их название и кол-во в отдельное окно,обновляющееся после каждого запуска скрипта.
Posted: 2006-09-28 15:14:33
by Dominik
А можешь плзз

, сделать чтобы считал руду.
Я не умею с массивами работать.
Типы руд:
Пожалуйста.

Posted: 2006-09-28 16:24:03
by Scripts Writer
Code: Select all
sub Get_Ore_Count()
DIM ore[4]
ore[0]='0x19B9'
ore[1]='0x19B7'
ore[2]='0x19BA'
ore[3]='0x19B8'
var i , k
uo.TextClear()
for k = 0 to 3
uo.FindType(ore[k],'-1','backpack')
for i = 0 to uo.FindCount() - 1
uo.FindType(ore[k],'-1','backpack')
uo.Click('finditem')
uo.Print(uo.GetName('finditem'))
wait(100)
uo.TextOpen()
uo.TextPrint(uo.GetName('finditem'))
uo.Ignore('finditem')
next
next
uo.IgnoreReset()
end sub
Попробуй. Если работает- отпишись сюда
Posted: 2006-09-28 16:32:42
by Nmy
клик просто так или нужен? кажется он неиграет роль при получение "наме" обекта

Posted: 2006-09-28 16:46:42
by Dominik
Не работает.(
Сначало выдаёт кол-во айрона, затем стирает это, и пишет безконечно пустые строки.
+Потом ещё в скрипте на лут руды в сундук, не может найти руду. Наверно типы как-то сбиваются.
Posted: 2006-09-28 17:02:54
by Scripts Writer
NMY wrote:клик просто так или нужен? кажется он неиграет роль при получение "наме" обекта

Играет самую важную роль. Без него ты ничего не определишь, если предварительно не кликнешь.
Posted: 2006-09-28 17:05:36
by Scripts Writer
10 Iron Ore
10 Dull Copper Ore
a Vulcan ore
2 Rose Ore
3 Copper Ore
Code: Select all
sub Get_Ore_Count()
DIM ore[4]
ore[0]='0x19B9'
ore[1]='0x19B7'
ore[2]='0x19BA'
ore[3]='0x19B8'
var i , k
uo.TextClear()
for k = 0 to 3
uo.FindType(ore[k],'-1','backpack')
for i = 0 to uo.FindCount() - 1
uo.FindType(ore[k],'-1','backpack')
uo.Click('finditem')
uo.Print(uo.GetName('finditem'))
wait(100)
uo.TextOpen()
uo.TextPrint(uo.GetName('finditem'))
uo.Ignore('finditem')
next
next
uo.IgnoreReset()
end sub
Так как не тестил-не обратил внимания. Ошибка была совсем незначительная- в цикле
стояло uo.TextClear() , что чистило окно перед каждым новым поиском типа руды, тем самым что касается айрона-у тебя там не бесконечно пустые строки, а просто тип руды кот. >3 стоит последним в массиве, и на тот момент у тебя в паке был только айрон => он нашел 1 ор руды-вывел- очистил, 2 ора руды-вывел-очистил, 3 ора руды-вывел-очистил , и только потом нашел руду с кол-вом в 4 и больше и остановился. Вобщем, думаю тебе мало что даст моё объяснение, но возможно кто -то кто учится писать скрипты или пытается в этом разобратся поможет эта ошибка , чтобы не допускать таких впредь.
Всё работает. Смотри.
Posted: 2006-09-28 17:12:09
by Scripts Writer
Есть у кого потребность в скрипте, которым можно посчитать руду и логи не только в паке, но и в сундуке кот. можно указать прицелом?!
Переписать на самом деле не стоит особого труда, но возможно кому то это может пригодиться.
Posted: 2006-09-28 17:15:05
by Dominik
Ага. Всё работает.) Спасибо.

Posted: 2006-09-28 17:18:56
by Scripts Writer
Всегда пож. , лишь бы помогло.
Posted: 2006-09-29 11:05:22
by slonopotam
Отрывок из скрипта от "Elthar aka Duo", на люмб.
Code: Select all
sub InfoLogs()
uo.Print('У вас всего '+str(uo.Count('0x1BDD'))+' логов в сумке')
uo.Print('Из них '+str(uo.Count('0x1BDD','0x0000'))+' простых и ' +str(uo.Count('0x1BDD')-uo.Count('0x1BDD','0x0000'))+' цветных')
end sub
Posted: 2006-09-29 13:02:21
by Edred
You Must Die wrote:Есть у кого потребность в скрипте, которым можно посчитать руду и логи не только в паке, но и в сундуке кот. можно указать прицелом?!
В топике с моим наследством такого до дури.
Posted: 2006-09-29 15:03:34
by Cornor
sub InfoLogs()
uo.Print('Ó âàñ âñåãî '+str(uo.Count('0x1BDD'))+' ëîãîâ â ñóìêå')
uo.Print('Èç íèõ '+str(uo.Count('0x1BDD','0x0000'))+' ïðîñòûõ è ' +str(uo.Count('0x1BDD')-uo.Count('0x1BDD','0x0000'))+' öâåòíûõ')
uo.Print('Ó âàñ '+str(uo.Count('0x1BDD','0x0498'))+' Àñòåð ëîãîâ â ñóìêå')
end sub
Эт на логи ... меяеш типы и будет на руду.
Posted: 2006-09-29 15:28:58
by Scripts Writer
1Edred Не спорю, но попробуй найди там это.
2Кор Чего ты здесь постишь, я не понимаю? Ты меня пытаешься уличить в том что я скопировал этот скрипт, или что? -Ты содержание темы читал?
Posted: 2006-09-29 20:50:17
by Mihail
я че-то не очень понял - это все нужно для того чтобы в text-окне написать кол-во заданного типа предмета?
Code: Select all
sub inf()
#Mihail
var i
Dim a[3]
a[0]='0x0F36' #сено
a[1]='0x0E21' #бинты
a[2]='0x0F0E' #банки
uo.addobject('infobag') #контейнер, где считать
while uo.targeting()
wait(100)
wend
uo.useobject('infobag')
uo.textclear()
for i=0 to 2
uo.findtype(a[i],-1,'infobag')
if uo.findcount() then
uo.click('finditem')
checklag()
if Right(uo.getname('finditem'),1)=='s' then #мега-крутая проверка на складываемость предмета в стопку- если последняяя буква "s" - то складывается (empty bottles, logs) :D
uo.textprint('Предмет: '+uo.getname('finditem')+': '+str(uo.getquantity('finditem')))
else
uo.textprint('Предмет: '+uo.getname('finditem')+': '+str(uo.findcount('finditem')))
end if
end if
next
uo.textprint()
uo.textopen()
end sub
Posted: 2006-09-29 21:17:36
by Cornor
You Must Die wrote:2Кор Чего ты здесь постишь, я не понимаю? Ты меня пытаешься уличить в том что я скопировал этот скрипт, или что? -Ты содержание темы читал?
Не всё ок я просто дал норм вариан рабочий... время прочитать небыло.) Помог человеку так терь ещё оказываеся толпа обиделась.)))