Yoko

All sides of Injection
It is currently 2025-10-15 15:59:23

All times are UTC+02:00




Post new topic  Reply to topic  [ 6 posts ] 
Author Message
PostPosted: 2007-12-23 11:10:36 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
Воопщем Уважаемые Знатоки, такая задачка:
Code:
Шард ДРВ, в паке у чара (или в сундуке) лежит допустим 5 кучек руды по 1 штуке, допустим Gold, 2 кучки по 2 штуки, и 3 кучки по 3 штуки. Плюс 5 кучек руды по 1 штуке, допустим Расти, 2 кучки по 2 штуки.

Понятно написал? Внимание вопрос... как их сосчитать, записать в лог в виде: Имя - кол-во? Причем если получится, то желательно из имени убрать цифру количества. Поиск по типу записывает в лог все кучки одного типа, не сумируя их, то есть:
Лежит 5 кучек по одной, в лог пишется:
Code:
a Gold Ore - 1

и так 5 раз. Скажу сразу, пробовал сумировать найденный тип, да он сумирует, но как к нему прибавить кучки другова типа, но той же руды, когда кол-во 2 или 3?
Я понимаю что это бред, зачем мне все это надо... надо братья надо. Жду ваши предложения.


Top
   
 Post subject:
PostPosted: 2007-12-23 12:34:33 
Offline
Expert!
User avatar

Joined: 2005-05-04 14:05:19
Posts: 2580
Location: Москва
Вот жуть то...
есть тип кучи с 1 оре последующие отличаются на 1
то есть все с водится 2-му циклу первый перебирает цвета руды второй типы.

Можно обойтись 1 циклом, так как вего руд мало то можно сделать 1 масив о цветам руд. Далее пробигаем по всем итемам с проверкой их пренодлежности к руде, дальше за исываем соответствено цвету в масив.


Top
   
 Post subject:
PostPosted: 2007-12-23 12:52:20 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
Grin wrote:
Вот жуть то...


Не говори :D Сам в шоке ))) третий день думаю, уже мозг закипел...
Таксс из твоего совета я понял следующее:
Code:
1)делаем 2 массива, один с типами второй с цветами
2)ищем по типу, если находит запускаем поиск по цвету
3)по цвету нашли, плюсуем к переменной kolvo
4)ищем следующий тип, и так далее

Ок, кол-во нашли... как теперь быть с именами? Создавать третий массив с именами и сопостовлять по цвету? Или как по другому?


Top
   
 Post subject:
PostPosted: 2007-12-23 13:08:56 
Offline
Expert!
User avatar

Joined: 2005-05-04 14:05:19
Posts: 2580
Location: Москва
типы линейны масивов не надо...
масиыв нужен только для цветов

можешь и масив названий сделать.

Code:
sub OreCount()
   var count = 20
   var sum = 0
   var type = 0
   dim colors[20]
   dim names[20]
   
   for var i = 0 to count-1
      sum = 0
      uo.findtype(-1, colors[i], -1)
      while uo.FindCount()
         type = uo.Hex2Int(uo.GetGraphic('finditem'))
         if (type >= начало) and (type <= конец) then
            sum = sum + uo.GetQuantity('finditem')
         end if
         uo.Ignore('finditem')
         wait(10)
         uo.findtype(-1, colors[i], -1)
      wend
      if sum then
         uo.Print(names[i]+": "+str(sum))
      endif
   next
   
   uo.IgnoreRest()
end sub


ну а можно и подругому...


Top
   
 Post subject:
PostPosted: 2007-12-23 13:17:20 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
Grin wrote:
типы линейны масивов не надо...
масиыв нужен только для цветов

можешь и масив названий сделать.

Code:
sub OreCount()
   var count = 20
   var sum = 0
   var type = 0
   dim colors[20]
   dim names[20]
   
   for var i = 0 to count-1
      sum = 0
      uo.findtype(-1, colors[i], -1)
      while uo.FindCount()
         type = uo.Hex2Int(uo.GetGraphic('finditem'))
         if (type >= начало) and (type <= конец) then
            sum = sum + uo.GetQuantity('finditem')
         end if
         uo.Ignore('finditem')
         wait(10)
         uo.findtype(-1, colors[i], -1)
      wend
      if sum then
         uo.Print(names[i]+": "+str(sum))
      endif
   next
   
   uo.IgnoreRest()
end sub


ну а можно и подругому...


Хех интерестный подход, особенно с проверкой типов :) Спасибо за идею, седня вечерочком буду париться. После полутора лет без инжи, как то тяжело все вспоминать, но потихоньку получается )))

Code:
ну а можно и подругому...


Интерестная фраза... многообещающая :D


Top
   
 Post subject:
PostPosted: 2007-12-23 13:22:52 
Offline
Expert!
User avatar

Joined: 2005-05-04 14:05:19
Posts: 2580
Location: Москва
тут дело не в знании а в понимании чего надо сделать что бы сосчитать...


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 6 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited