выложу то что "запрещено" до сих пор..
Code:
sub dogon()
if uo.getglobal('check_dogon') == '0' then
uo.setglobal('check_dogon','1')
repeat
if uo.getdistance('lasttarget') > 0 and UO.GetX('lasttarget') <> 0 then
#if uo.getx('lasttarget') <> uo.getx() and uo.gety('lasttarget') <> uo.gety() and UO.GetX('lasttarget') <> 0 then
#if UO.GetX('lasttarget') <> 0 then
hod(UO.GetX('lasttarget'),UO.Gety('lasttarget'))
wait(5)
else
wait(10)
end if
until 0
else
uo.setglobal('check_dogon','0')
uo.exec('terminate dogon')
end if
end sub
sub hod(xko,yko)
var mx=UO.GetX()
var my=UO.GetY()
if mx == xko and my > yko then
UO.Press(33)
endif
if mx == xko and my < yko then
UO.Press(35)
endif
if mx < xko and my == yko then
UO.Press(34)
endif
if mx < xko and my > yko then
UO.Press(39)
endif
if mx < xko and my < yko then
UO.Press(40)
endif
if mx > xko and my == yko then
UO.Press(36)
endif
if mx > xko and my > yko then
UO.Press(38)
endif
if mx > xko and my < yko then
UO.Press(37)
endif
end sub
Code:
sub WS_X_WS()
; -----------------------------------------------------
var LTimer, MyMana
var mX = UO.GetX('laststatus')
var mY = UO.GetY('laststatus')
var mZ = UO.GetZ('laststatus')
var mT = '400'
; -- Wall of Stone # 1 --------------------------------
if UO.GetX('laststatus') > UO.GetX('self') then
UO.WaitTargetTile( mT, STR(mX-2), STR(mY), STR(mZ))
UO.Cast('Wall of Stone')
else
UO.WaitTargetTile( mT, STR(mX+2), STR(mY), STR(mZ))
UO.Cast('Wall of Stone')
endif
LTimer = UO.Timer()
MyMana = UO.Mana
repeat
wait(100)
until UO.Mana < MyMana || UO.Timer() > LTimer+30
; -- Wall of Stone # 2 --------------------------------
if UO.GetY('laststatus') > UO.GetY('self') then
UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ))
UO.Cast('Wall of Stone')
else
UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ))
UO.Cast('Wall of Stone')
endif
LTimer = UO.Timer()
MyMana = UO.Mana
repeat
wait(100)
until UO.Mana < MyMana || UO.Timer() > LTimer+30
; -- Fire Field ---------------------------------------
if UO.GetY('laststatus') > UO.GetY('self') then
UO.WaitTargetTile( mT, STR(mX), STR(mY-2), STR(mZ))
UO.Cast('Fire Field')
else
UO.WaitTargetTile( mT, STR(mX), STR(mY+2), STR(mZ))
UO.Cast('Fire Field')
endif
end sub
Code:
sub Loot4()
VAR i,Exit
DIM Loot[20]
Loot[0]=0x0EED ; gp
Loot[1]=0x0F7B ; BM
Loot[2]=0x0F7A ; BP
Loot[3]=0x0F84 ; GA
Loot[4]=0x0F85 ; GI
Loot[5]=0x0F86 ; MR
Loot[6]=0x0F88 ; NS
Loot[7]=0x0F8C ; SA
Loot[8]=0x0F8D ; SS
Loot[9]=0x1078 ;gray dragon hide
Loot[10]=0x19B7 ;Dragon Ore 1
Loot[11]=0x19B9 ;Dragon Ore 4
Loot[12]=0x1411 ;arm
Loot[13]=0x1410 ;arm
Loot[14]=0x1414 ;arm
Loot[15]=0x0E21 ;ban
Loot[16]=0x0F78 ;batw
Loot[17]=0x0F8B ;pumise
Loot[18]=0x0F82 ;dragon`s blood
Loot[19]=0x0F91 ;Wyrm's Hearts
Loot[20]=0x0E34 ;blank scrolls
UO.SetReceivingContainer('0x4163B13F') ;ID backpacka
uo.waittargetobject('lastcorpse')
uo.UseType('0x0F51')
For i=0 to 20
Exit=0
repeat
UO.FindType(Loot[i],-1,'lastcontainer')
if UO.GetQuantity('finditem') then
UO.Grab('0','finditem')
wait(100)
Else
Exit=1
endif
until Exit==1 OR uo.injournal("loot")
Next
UO.UnSetReceivingContainer()
end sub
Code:
sub SortItem()
var n_1, Wait_Time=1100
Dim Items[13]
Items[0] = 9
Items[1] = '0x0E20' ; ????? ????
Items[2] = '0x0E20' ; ?????? ???????
Items[3] = '0x0F3F' ; ??????
Items[4] = '0x1BFB' ; ?????
Items[5] = '0x09B0' ; ????? (??????????) 1
Items[6] = '0x0E20' ; ????? (??????????) 2
Items[7] = '0x0E76' ; ????? (???????)
Items[8] = '0x0EB5' ; ??????
Items[9] = '0x0EFC' ; Shrink
Items[10] = '0x0E25' ; Regen Hp
Items[11] = '0x0E26' ; Regen Mana
Items[11] = '0x0F06' ; blood
Items[13] = '0x0F9E' ; scissors
UO.Set('grabdelay','250')
;================================================= ===============
; ????????? ?????:
;================================================= ==========================
If UO.Count('0x0F0B') Then ; Refresh
REPEAT
UO.FindType('0x0F0B','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>142 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','142','60','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('0x0F0E') Then ; BoTTLES
REPEAT
UO.FindType('0x0F0E','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>159 or UO.GetY('finditem')<>165 Then
UO.MoveItem('finditem','all','-1','159','165','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 ; Expolojn
REPEAT
UO.FindType('0x0F0D','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>44 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','44','60','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 ; MAHKu
REPEAT
UO.FindType('0x0F09','0x0388','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>44 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','100','60','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 ; uHBu3Ku
REPEAT
UO.FindType('0x0F09','0x0060','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>56 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','56','60','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 ; stilkins
REPEAT
UO.FindType('0x0F09','0x084D','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>68 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','68','60','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('0x0F0C') Then ; Great Heal potion
REPEAT
UO.FindType('0x0F0C','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>77 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all ','-1','77','60','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 ; CLEAN BANDAGES
REPEAT
UO.FindType('0x0E21','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>152 or UO.GetY('finditem')<>85 Then
UO.MoveItem('finditem','all','-1','152','85','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('0x0E79') Then ; CyMKa
REPEAT
UO.FindType('0x0E79','- 1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>162 or UO.GetY('finditem')<>75 Then
UO.MoveItem('finditem','all','-1','162','75','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('0x0E9B') Then ; Stypka
REPEAT
UO.FindType('0x0E9B','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>70 or UO.GetY('finditem')<>170 Then
UO.MoveItem('finditem','all','-1','70','170','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('0x0F51') Then ; DaggeR
REPEAT
UO.FindType('0x0F51','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>60 or UO.GetY('finditem')<>170 Then
UO.MoveItem('finditem','all','-1','60','170','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('0x13F4 ') Then ; Crock
REPEAT
UO.FindType('0x13F4 ','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>110 or UO.GetY('finditem')<>160 Then
UO.MoveItem('finditem','all','-1','110','160','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('0x0EFA') Then ; Spell Book
REPEAT
UO.FindType('0x0EFA','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>160 or UO.GetY('finditem')<>35Then
UO.MoveItem('finditem','all','-1','160','35','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('0x0EFC') Then ; Shrink
REPEAT
UO.FindType('0x0EFC','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>136 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','125','60','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('0x0E25') Then ; Regen Hp
REPEAT
UO.FindType('0x0E25','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>136 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','119','60','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('0x1F5F') Then ; fs
REPEAT
UO.FindType('0x0E26','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>136 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','100','60','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('0x1F4A') Then ; lt
REPEAT
UO.FindType('0x0E26','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>136 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','100','60','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 ; blood
REPEAT
UO.FindType('0x0F06','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>136 or UO.GetY('finditem')<>60 Then
UO.MoveItem('finditem','all','-1','87','60','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('0x0F9E') Then ; scissors
REPEAT
UO.FindType('0x0F9E','-1','2')
If UO.FindCount() Then
If UO.GetX('finditem')<>60 or UO.GetY('finditem')<>170 Then
UO.MoveItem('finditem','all','-1','40','170','0')
Wait(Wait_Time)
UO.Ignore('finditem')
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')<>150 or UO.GetY('finditem')<>135 Then
UO.MoveItem('finditem','all','-1','150','135','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