Scrolls, type, оптимизация

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

Scrolls, type, оптимизация

Post by Gromiz »

hi

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

возможно как-то оптимизировать указание типов предметов, которые надо собирать?

а то сейчас часть кода имеет вид: "в бесконечность и далее"

Code: Select all

   ...
   lootGM('0x1F31', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F32', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F33', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F34', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F35', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F36', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F37', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F38', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F39', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F3A', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F3B', '0x0000', '0x404079D4'); Scrolls
   lootGM('0x1F3C', '0x0000', '0x404079D4'); Scrolls
   ...
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Scrolls, type, оптимизация

Post by Mirage »

строка PUTLoot2(0x1f19, 0x1f71, '-1', corps, pack,'','','')
переместит ВСЕ свитки из контейнера corps в контейнер pack - даже если их там будет 100500 по 1 разложены.


Code: Select all

sub main()
   PUTLoot2(0x1f19, 0x1f71, '-1', corps, pack,'','','')   ; scroll 1-8 круг
endsub

Sub PUTLoot2(Type1, Type2, Color, SourceContainer, TargetContainer,X,Y,Z)
   for TType = Type1 to Type2
      PUTLoot(TType, Color, SourceContainer, TargetContainer,X,Y,Z)
   next
end sub
Sub PUTLoot(Type, Color, SourceContainer, TargetContainer,X,Y,Z)
   UO.FindType(Type, Color, SourceContainer)
   while UO.FindCount()
      timemove=UO.Timer()
                uo.MoveItem('finditem',0,TargetContainer,X,Y,Z)
                repeat
                   wait(lootwait)
                until UO.ContainerOf(itemID)<>'TargetContainer' || timemove+30>UO.Timer()
      UO.FindType(Type, Color, SourceContainer)
   wend
end sub
Post Reply