Page 1 of 1

Сортировка

Posted: 2005-01-27 10:10:39
by MARLENUS
Искал не нашел ни одной темы

Интересует, если ли в инже программная функция сортировки?
или ее писать самому надо.

Хочу например отсортировать N-ное количество предметов по сериалу

Re: Сортировка

Posted: 2005-01-27 13:59:56
by Edred
MARLENUS wrote:Искал не нашел ни одной темы

Интересует, если ли в инже программная функция сортировки?
или ее писать самому надо.

Хочу например отсортировать N-ное количество предметов по сериалу


Это как это? Сериал у каждого объекта уникальный, как по ним сортировать?

Re: Сортировка

Posted: 2005-01-27 14:20:35
by Askaneli
Edred wrote:
MARLENUS wrote:Искал не нашел ни одной темы

Интересует, если ли в инже программная функция сортировки?
или ее писать самому надо.

Хочу например отсортировать N-ное количество предметов по сериалу


Это как это? Сериал у каждого объекта уникальный, как по ним сортировать?

Например по убыванию или по возрастанию он имеет ввиду как я понимаю !!!
На сколько я заметил команда граб именно отсортировано по сериалу однотипные вещи таскает из контейнера, правда не помню по убыванию или возрастанию !!!

Posted: 2005-01-27 15:03:57
by BETEPAH
Не че то тут не так .......если он спрашивает про програмную фокчию сортировки то он наверное что то смыслит .....
Или просто ошибся в словах ..
Мареленус ...мож по типу ....ибо по сериалу вещи не раскладываются.
1 вещю = 1 серийнику

Posted: 2005-01-27 17:44:22
by MARLENUS
BETEPAH wrote:Не че то тут не так .......если он спрашивает про програмную фокчию сортировки то он наверное что то смыслит .....
Или просто ошибся в словах ..
Мареленус ...мож по типу ....ибо по сериалу вещи не раскладываются.
1 вещю = 1 серийнику


А я вот именно хочу отсортировать по возрастанию серийника
нужно мне это
а внутренней реализации нет
Пришлось изгаляться

Code: Select all

 dim tmpBags[254]
 dim Bags[254]
 var s,z,c,n,x,y
 var i = 0
 UO.findtype('0x0E76','-1','backpack')
 while UO.FindCount()>0
  UO.Print(UO.FindCount())
  UO.Click("finditem")
  tmpBags[i] = UO.GetSerial("finditem")
  i = i + 1
  UO.Ignore("finditem")
  wait(500)
  UO.findtype('0x0E76','-1','backpack')
 wend
 UO.IgnoreReset()
 i = i - 1
 for s = 0 to i
  c = 0
  for z = 0 to i
   if tmpBags[s]>tmpBags[z] then
    c = c + 1
   endif
  next
  Bags[c] = tmpBags[s]
 next
 for n = 0 to 254
  if Bags[n] then
   x = 28 + (n-12*int(n/12))*12
   y = 53 + int(n/12)*15
   UO.Exec("moveitem "+Bags[n]+" 1 backpack "+str(x)+" "+str(y)+" 0")
   wait(1000)
  endif
 next