Исправьте скрипт пожалуйста
Posted: 2007-04-16 08:05:16
Скрипт на раскладку химии в паке но глючит тайп, пишет всё ок а сам нефига, заного запускаеш пишет что нет паке пока логаут не сделаеш!
sub SortItem()
var n_1, Wait_Time=500
Dim Items[8]
Items[0] = 7
Items[1] = '0x0E20' ; ????? ????
Items[2] = '0x0F0E' ; ?????? ???????
Items[3] = '0x0F3F' ; ??????
Items[4] = '0x1BFB' ; ?????
Items[5] = '0x09B0' ; ????? (??????????) 1
Items[6] = '0x0E79' ; ????? (??????????) 2
Items[7] = '0x0E76' ; ????? (???????)
UO.Set('grabdelay','250')
;===========================================================================
; ????????? ?????:
;===========================================================================
If UO.Count('0x0F0B') Then ; ???????
REPEAT
UO.FindType('0x0F0B','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>142 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','142','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09','0x0388') Then ; ????
REPEAT
UO.FindType('0x0F09','0x0388','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>44 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','44','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09','0x0060') Then ; ?????
REPEAT
UO.FindType('0x0F09','0x0060','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>56 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','56','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09','0x084D') Then ; ?????????
REPEAT
UO.FindType('0x0F09','0x084D','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>68 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','68','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09') Then ; ????? ???
REPEAT
UO.FindType('0x0F09','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>77 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','77','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F06') Then ; ?????
REPEAT
UO.FindType('0x0F06','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>103 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','103','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F0D') Then ; ????? ????
REPEAT
UO.FindType('0x0F0D','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>114 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','114','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
;===========================================================================
; ????????? ????:
;===========================================================================
If UO.Count('0x0E21') Then ; ?????
REPEAT
UO.FindType('0x0E21','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>97 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','97','65','0')
Wait(Wait_Time)
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
;===========================================================================
; ????????? ????: ?????? ?????? ????
;===========================================================================
For n_1 = 1 TO Items[0]
If UO.Count(Items[n_1]) Then
REPEAT
UO.FindType(Items[n_1],'-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>137 or UO.GetY('finditem')<>127 Then
UO.MoveItem('finditem','all','-1','137','127','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
Next
UO.IgnoreReset()
UO.Print("SortItem Done!")
end sub
sub SortItem()
var n_1, Wait_Time=500
Dim Items[8]
Items[0] = 7
Items[1] = '0x0E20' ; ????? ????
Items[2] = '0x0F0E' ; ?????? ???????
Items[3] = '0x0F3F' ; ??????
Items[4] = '0x1BFB' ; ?????
Items[5] = '0x09B0' ; ????? (??????????) 1
Items[6] = '0x0E79' ; ????? (??????????) 2
Items[7] = '0x0E76' ; ????? (???????)
UO.Set('grabdelay','250')
;===========================================================================
; ????????? ?????:
;===========================================================================
If UO.Count('0x0F0B') Then ; ???????
REPEAT
UO.FindType('0x0F0B','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>142 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','142','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09','0x0388') Then ; ????
REPEAT
UO.FindType('0x0F09','0x0388','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>44 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','44','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09','0x0060') Then ; ?????
REPEAT
UO.FindType('0x0F09','0x0060','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>56 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','56','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09','0x084D') Then ; ?????????
REPEAT
UO.FindType('0x0F09','0x084D','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>68 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','68','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F09') Then ; ????? ???
REPEAT
UO.FindType('0x0F09','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>77 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','77','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F06') Then ; ?????
REPEAT
UO.FindType('0x0F06','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>103 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','103','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
If UO.Count('0x0F0D') Then ; ????? ????
REPEAT
UO.FindType('0x0F0D','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>114 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','114','65','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
;===========================================================================
; ????????? ????:
;===========================================================================
If UO.Count('0x0E21') Then ; ?????
REPEAT
UO.FindType('0x0E21','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>97 or UO.GetY('finditem')<>65 Then
UO.MoveItem('finditem','all','-1','97','65','0')
Wait(Wait_Time)
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
;===========================================================================
; ????????? ????: ?????? ?????? ????
;===========================================================================
For n_1 = 1 TO Items[0]
If UO.Count(Items[n_1]) Then
REPEAT
UO.FindType(Items[n_1],'-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>137 or UO.GetY('finditem')<>127 Then
UO.MoveItem('finditem','all','-1','137','127','0')
Wait(Wait_Time)
UO.Ignore('finditem')
Else
UO.Ignore('finditem')
End If
End If
Until UO.FindCount()==0 or UO.Dead()
End If
Next
UO.IgnoreReset()
UO.Print("SortItem Done!")
end sub