Помогите подправить скрипт пожалуйсто, не скидывает один вид камней в мешок
11 лет
Paladin
Сообщений: 93
Рег. 18.06.2013
21 июня 2013 10:06
Сообщение #1
sub sortite2()
var c
DIM R[46]
R[1] = '0x0F26' # Granates
R[2] = '0x0F25' # Ambers
R[3] = '0x0F13' # Rubys
R[4] = '0x0F11' # Sapphires
R[5] = '0x0F18' # Tourmalines
R[6] = '0x0F15' # Citrines
R[7] = '0x0F10' # Emeralds
R[8] = '0x0F16' # Amethysts
R[9] = '0x0F26' # Diamonds
R[10] = '0x1F5F'; скролы
R[11] = '0x1F4F'; скролы
R[12] = '0x1F61'; скролы
R[13] = '0x1F6A'; скролы
R[14] = '0x1F53'; скролы
R[15] = '0x1F62'; скролы
R[16] = '0x1F5C'; скролы
R[17] = '0x1F46'; скролы
R[18] = '0x1F57'; скролы
R[19] = '0x1F5B'; скролы
R[20] = '0x1F55'; скролы
R[21] = '0x1F60'; скролы
R[22] = '0x1F47'; скролы
R[23] = '0x1F64'; скролы
R[24] = '0x1F6C'; скролы
R[25] = '0x1F54'; скролы
R[26] = '0x1F48'; скролы
R[27] = '0x1F58'; скролы
R[28] = '0x1F5A'; скролы
R[29] = '0x1F63'; скролы
R[30] = '0x1F66'; скролы
R[31] = '0x1F6B'; скролы
R[32] = '0x1F51'; скролы
R[33] = '0x1F4E'; скролы
R[34] = '0x1F68'; скролы
R[35] = '0x1F5D'; скролы
R[36] = '0x1F4D'; скролы
R[37] = '0x0F91'; Сердца для инвизок
R[38] = '0x0F78'; Батвинги
R[39] = '0x0F83'; Сердца мисок
R[40] = '0x0F8B'; Пумпис
R[41] = '0x0F87'; Глазки
R[42] = '0x0F80'; Демон кости
R[43] = '0x0F8E'; Серпентскаилс
R[44] = '0x0F7D'; Виал оф блуд
R[45] = '0x0F7E'; Кости
R[46] = '0x0F82'; Драгон блуд
VAR Sunduk1 = '0x407C1204'; Откуда брать
VAR Sunduk2 = '0x40DADA9E'; Сундук для камней
VAR Sunduk3 = '0x40352EBC'; Сундук для свитков
VAR Sunduk4 = '0x40354C64'; Сундук для реагентов
uo.useobject(Sunduk1)
  wait(1000)
uo.useobject(Sunduk2)
  wait(1000)
uo.useobject(Sunduk3)
  wait(1000)
uo.useobject(Sunduk4)
  wait(1000)
for c=1 to 9
  UO.FindType(R[c],"0",Sunduk1)
  if UO.FindCount()>0 Then
repeat
     UO.MoveItem("finditem","0",Sunduk2)
          wait(1000)
  UO.FindType(R[c],"0",Sunduk1)
until not UO.FindCount()
  Endif
next
for c=10 to 36
  UO.FindType(R[c],"0",Sunduk1)
  if UO.FindCount()>0 Then
repeat
     UO.MoveItem("finditem","0",Sunduk3)
          wait(1000)
  UO.FindType(R[c],"0",Sunduk1)
until not UO.FindCount()
  Endif
next
for c=37 to 46
  UO.FindType(R[c],"0",Sunduk1)
  if UO.FindCount()>0 Then
repeat
     UO.MoveItem("finditem","0",Sunduk4)
          wait(1000)
  UO.FindType(R[c],"0",Sunduk1)
until not UO.FindCount()
  Endif
next
      uo.print(' -= Done =- ')
End sub


не скидывает Granates в сумку. остальные камни скидывает.

Гости
Сообщений: 30
Рег. 6.06.2013
21 июня 2013 10:12
Сообщение #2
sub sortite2()
var c
DIM R[45]
R[0] = '0x0F26' # Granates
R[1] = '0x0F25' # Ambers
R[2] = '0x0F13' # Rubys
R[3] = '0x0F11' # Sapphires
R[4] = '0x0F18' # Tourmalines
R[5] = '0x0F15' # Citrines
R[6] = '0x0F10' # Emeralds
R[7] = '0x0F16' # Amethysts
R[8] = '0x0F26' # Diamonds
R[9] = '0x1F5F'; скролы
R[10] = '0x1F4F'; скролы
R[11] = '0x1F61'; скролы
R[12] = '0x1F6A'; скролы
R[13] = '0x1F53'; скролы
R[14 = '0x1F62'; скролы
R[15] = '0x1F5C'; скролы
R[16] = '0x1F46'; скролы
R[17] = '0x1F57'; скролы
R[18] = '0x1F5B'; скролы
R[19] = '0x1F55'; скролы
R[20] = '0x1F60'; скролы
R[21] = '0x1F47'; скролы
R[22] = '0x1F64'; скролы
R[23] = '0x1F6C'; скролы
R[24] = '0x1F54'; скролы
R[25] = '0x1F48'; скролы
R[26] = '0x1F58'; скролы
R[27] = '0x1F5A'; скролы
R[28] = '0x1F63'; скролы
R[29] = '0x1F66'; скролы
R[30] = '0x1F6B'; скролы
R[31] = '0x1F51'; скролы
R[32] = '0x1F4E'; скролы
R[33] = '0x1F68'; скролы
R[34] = '0x1F5D'; скролы
R[35] = '0x1F4D'; скролы
R[36] = '0x0F91'; Сердца для инвизок
R[37] = '0x0F78'; Батвинги
R[38] = '0x0F83'; Сердца мисок
R[39] = '0x0F8B'; Пумпис
R[40] = '0x0F87'; Глазки
R[41] = '0x0F80'; Демон кости
R[42] = '0x0F8E'; Серпентскаилс
R[43] = '0x0F7D'; Виал оф блуд
R[44] = '0x0F7E'; Кости
R[45] = '0x0F82'; Драгон блуд
VAR Sunduk1 = '0x407C1204'; Откуда брать
VAR Sunduk2 = '0x40DADA9E'; Сундук для камней
VAR Sunduk3 = '0x40352EBC'; Сундук для свитков
VAR Sunduk4 = '0x40354C64'; Сундук для реагентов
uo.useobject(Sunduk1)
  wait(1000)
uo.useobject(Sunduk2)
  wait(1000)
uo.useobject(Sunduk3)
  wait(1000)
uo.useobject(Sunduk4)
  wait(1000)
for c=0 to 8
  UO.FindType(R[c],"0",Sunduk1)
  if UO.FindCount()>0 Then
repeat
     UO.MoveItem("finditem","0",Sunduk2)
          wait(1000)
  UO.FindType(R[c],"0",Sunduk1)
until not UO.FindCount()
  Endif
next
for c=9 to 35
  UO.FindType(R[c],"0",Sunduk1)
  if UO.FindCount()>0 Then
repeat
     UO.MoveItem("finditem","0",Sunduk3)
          wait(1000)
  UO.FindType(R[c],"0",Sunduk1)
until not UO.FindCount()
  Endif
next
for c=36 to 45
  UO.FindType(R[c],"0",Sunduk1)
  if UO.FindCount()>0 Then
repeat
     UO.MoveItem("finditem","0",Sunduk4)
          wait(1000)
  UO.FindType(R[c],"0",Sunduk1)
until not UO.FindCount()
  Endif
next
      uo.print(' -= Done =- ')
End sub

Попробуй так
13 лет
Ranger
Сообщений: 1043
Рег. 18.06.2011
21 июня 2013 14:27
Сообщение #3
Ниче так что у диамондов и гранатов один тип в скрипте указан? ;)

var Type, TType, Type1, Type2, Color, SourceContainer, TargetContainer
VAR SundLoot    = '0x40FDF84C'; бэкпак
VAR SundBi    = '0x40630CF9'; бижа камни

sub main()
PUTLoot2(0xf0f, 0xf30, '-1', SundLoot, SundBi); камни
endsub
sub PUTLoot2(Type1, Type2, Color, SourceContainer, TargetContainer)
uo.ignorereset()
for TType = Type1 to Type2
    PUTLoot(TType, Color, SourceContainer, TargetContainer)
next
endsub
sub PUTLoot(Type, Color, SourceContainer, TargetContainer)
uo.ignorereset()
Repeat
    UO.FindType(Type, Color, SourceContainer)
    If uo.FindCount()>0 Then
        uo.MoveItem('finditem',0,TargetContainer)
        wait(300)
    end if
Until uo.FindCount()<1 or uo.Dead()
end sub

По аналогии можно сделать всю сортировку.
Последние посетители (0):

 
Сейчас: 24 ноября 2024 18:02