Выдаём в окно кол-во и название логов находящихся в паке

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Выдаём в окно кол-во и название логов находящихся в паке

Post 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


Считаем логи в паке, выдавая их название и кол-во в отдельное окно,обновляющееся после каждого запуска скрипта.
Dominik
Posts: 24
Joined: 2006-05-03 02:25:00

Post by Dominik »

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

Code: Select all

0x19B9
0x19B7
0x19BA
0x19B8

Пожалуйста. :)
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post 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


Попробуй. Если работает- отпишись сюда
Last edited by Scripts Writer on 2006-09-28 17:09:51, edited 1 time in total.
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Code: Select all

uo.Click('finditem')

клик просто так или нужен? кажется он неиграет роль при получение "наме" обекта :roll:
Dominik
Posts: 24
Joined: 2006-05-03 02:25:00

Post by Dominik »

Не работает.(
Сначало выдаёт кол-во айрона, затем стирает это, и пишет безконечно пустые строки.
+Потом ещё в скрипте на лут руды в сундук, не может найти руду. Наверно типы как-то сбиваются.
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

NMY wrote:

Code: Select all

uo.Click('finditem')

клик просто так или нужен? кажется он неиграет роль при получение "наме" обекта :roll:


Играет самую важную роль. Без него ты ничего не определишь, если предварительно не кликнешь.
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post 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


Так как не тестил-не обратил внимания. Ошибка была совсем незначительная- в цикле

Code: Select all

for k = 0 to 3
  ...
next


стояло uo.TextClear() , что чистило окно перед каждым новым поиском типа руды, тем самым что касается айрона-у тебя там не бесконечно пустые строки, а просто тип руды кот. >3 стоит последним в массиве, и на тот момент у тебя в паке был только айрон => он нашел 1 ор руды-вывел- очистил, 2 ора руды-вывел-очистил, 3 ора руды-вывел-очистил , и только потом нашел руду с кол-вом в 4 и больше и остановился. Вобщем, думаю тебе мало что даст моё объяснение, но возможно кто -то кто учится писать скрипты или пытается в этом разобратся поможет эта ошибка , чтобы не допускать таких впредь.

Всё работает. Смотри.
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Есть у кого потребность в скрипте, которым можно посчитать руду и логи не только в паке, но и в сундуке кот. можно указать прицелом?!
Переписать на самом деле не стоит особого труда, но возможно кому то это может пригодиться.
Dominik
Posts: 24
Joined: 2006-05-03 02:25:00

Post by Dominik »

Ага. Всё работает.) Спасибо. :D :)
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Всегда пож. , лишь бы помогло.
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post 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
ДРВ
Spoiler
_________________
Антарес
Spoiler|Gostrabaiter|Umhra|Slog
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

You Must Die wrote:Есть у кого потребность в скрипте, которым можно посчитать руду и логи не только в паке, но и в сундуке кот. можно указать прицелом?!


В топике с моим наследством такого до дури.
Ни один скрипт не работает? Пора обновить Инжект...
Все работает, но хочется большего? Пора переходить на стелс...
Cornor
Posts: 67
Joined: 2005-06-07 21:05:18

Post 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


Эт на логи ... меяеш типы и будет на руду.
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

1Edred Не спорю, но попробуй найди там это.

2Кор Чего ты здесь постишь, я не понимаю? Ты меня пытаешься уличить в том что я скопировал этот скрипт, или что? -Ты содержание темы читал?
Mihail
Expert!
Posts: 548
Joined: 2005-05-20 20:30:10
Contact:

Post 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
Cornor
Posts: 67
Joined: 2005-06-07 21:05:18

Post by Cornor »

You Must Die wrote:2Кор Чего ты здесь постишь, я не понимаю? Ты меня пытаешься уличить в том что я скопировал этот скрипт, или что? -Ты содержание темы читал?


Не всё ок я просто дал норм вариан рабочий... время прочитать небыло.) Помог человеку так терь ещё оказываеся толпа обиделась.)))
Post Reply