Yoko

All sides of Injection
It is currently 2026-03-19 00:22:15

All times are UTC+02:00




Post new topic  Reply to topic  [ 2 posts ] 
Author Message
 Post subject: Срочно!
PostPosted: 2004-11-04 22:48:45 
Offline
User avatar

Joined: 2004-10-07 15:42:12
Posts: 53
Location: Москва
Народ, помогите с ковкой брони (цветной.)
Нужен скрипт который куёт 'Platemail (25)' и складывает в сундук..

Этот скрипт не предлагать, не работает!

sub MakeFull()
VAR CCurIng='0x0000', TCurIng=0
VAR jser, WCurIng=0, Kolvo = 150 ; На фулл с запасом
VAR Sunduk = '0x400E7F9F' ; Cундук с инготами
VAR Meshok = '0x0E75' ; Тип мешка для фулов
VAR CIngots = '0x0590' ; Цвет инготов
VAR CurMesh, BagForFull='0x402756AB' ; Сериал мешка и сумки для них

UO.Print("Script started")
DIM TIngots[4], Part[0], CIng[1], WIng[14]

TIngots[0]='0x1BEF' ; Типы инготов
TIngots[1]='0x1BE3'
TIngots[2]='0x1BF5'
TIngots[3]='0x1BE9'

Part[0]='Platemail (25)' ; Названия

CIng[0]='0x0590' ; Цвет инготов

WIng[0]='Rusty' ; Названия инготов
WIng[1]='Old Copper'
WIng[2]='Dull Copper'
WIng[3]='Bronze'
WIng[4]='Shadow'
WIng[5]='Rose'
WIng[6]='Agapite'
WIng[7]='Blood Rock'
WIng[8]='Verite'
WIng[9]='Valorite'
WIng[10]='Mytheril'
WIng[11]='Black Rock'
WIng[12]='Obsidian'
WIng[13]='Plutonium'

UO.IgnoreReset()
UO.DeleteJournal()
UO.UseObject(Sunduk)
For Var k=0 to 3 ; Узнаем тип
UO.FindType(TIngots[k],-1,Sunduk) ; Ищем любые инготы в сундуке
If UO.FindCount() > 0 Then
If UO.GetColor('finditem') == '0x0000' AND k == 0 Then
UO.MSG("I make a iron full!")
MakeIron(TIngots[k],'0x0000',Kolvo,Sunduk,Meshok,BagForFull)
Return
Else
If UO.GetQuantity('finditem') < Kolvo Then ; Для фула мало инготов
UO.MSG("I need "+STR(Kolvo)+" or more ingots")
UO.MoveItem('finditem','0',BagForFull)
Wait(500)
Return
Else
If TCurIng == 0 Then
TCurIng=TIngots[k]
EndIf
If UO.GetColor('finditem') == CIng[2] Then
UO.MSG("Dull Copper? I not make this full.")
UO.MoveItem('finditem',-1,BagForFull)
Wait(500)
Return
EndIf
If UO.GetColor('finditem') == CIng[3] Then
UO.MSG("Bronze? I not make this full.")
UO.MoveItem('finditem',-1,BagForFull)
Wait(500)
Return
EndIf
UO.Print("Avaible is "+STR(UO.GetQuantity('finditem'))+" ingots.")
UO.Print("Ingots type is "+TIngots[k])
EndIf
EndIf
Else
If k == 3 AND TCurIng == 0 Then
UO.Print("No avaible ingots. Script terminated.")
Return
EndIf
EndIf
Wait(1000)
Next
UO.FindType(TCurIng,-1,Sunduk)
For Var n=0 to 13 ; Узнаем цвет
If CIng[n] == UO.GetColor('finditem') Then
WCurIng = WIng[n]
CCurIng = CIng[n]
EndIf
Next
If CCurIng == '0x0000' Then
If TCurIng == TIngots[1] Then
WCurIng = 'Copper'
Else
If TCurIng == TIngots[2] Then
WCurIng = 'Silver'
Else
If TCurIng == TIngots[3] Then
WCurIng = 'Golden'
EndIf
EndIf
EndIf
EndIf
UO.MSG("Found "+(WCurIng)+" ingots.")
UO.FindType(Meshok,-1,Sunduk) ; Ищем мешки для фуллов
If UO.FindCount() == 0 Then
UO.MSG("No bag - NO FULL !!!")
Return
Else
CurMesh=UO.GetSerial('finditem')
EndIf
UO.FindType(TCurIng,CCurIng,Sunduk)
UO.MoveItem('finditem',STR(Kolvo),'backpack ') ; Забираем скока поднимем
Wait(500)
UO.Grab('1',CurMesh) ; Берем мешок в пэк
Wait(500)
CheckLag()
UO.SetCatchBag(CurMesh) ; Всё что сделаем в мешок
Var i=0
Repeat
UO.MSG("Куём "+WCurIng+" "+Part[i])
UO.AutoMenu('Blacksmithing','Colored')
UO.AutoMenu('Colored',WCurIng+' Armor')
UO.AutoMenu(WCurIng+' Armor',WCurIng+' Plate Armor')
UO.AutoMenu(WCurIng+' Plate Armor',Part[i])
Repeat
jser=0
UO.FindType(TCurIng,CCurIng,-1)
IF UO.FindCount() > 0 Then
UO.DeleteJournal()
UO.UseObject('finditem')
Else
UO.Print("Ingots not found")
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.DropHere(CurMesh)
Wait(500)
Return
EndIf
While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
Wait(100)
WEnd
If UO.InJournal("put") Then
jser=1
EndIf
Until jser == 1
i=i+1
UO.CancelMenu()
Until i > 6
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.MSG("FULL")
UO.MoveItem(CurMesh,'-1',BagForFull)
Wait(500)
end sub

sub MakeIron(TCurIng,CCurIng,Kolvo,Sunduk,Meshok,BagForFull)
Var jser, CurMesh = 0

DIM Part[6]

Part[0]='platemail (25)' ; Названия частей фулла
Part[1]='platemail legs'
Part[2]='platemail arms'
Part[3]='plate helm'
Part[4]='platemail gloves'
Part[5]='platemail gorget'

UO.FindType(Meshok,-1,Sunduk)
If UO.FindCount() == 0 Then
UO.MSG("No bag - NO FULL !!!")
Return
Else
CurMesh=UO.GetSerial('finditem')
EndIf

UO.FindType(TCurIng,CCurIng,Sunduk)
If UO.GetQuantity('finditem') < Kolvo Then
UO.MSG("I need "+STR(Kolvo)+" or more ingots")
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
Return
Else
UO.MoveItem('finditem',STR(Kolvo),'backpack ') ; Забираем скока поднимем
Wait(500)
UO.Grab('1',CurMesh) ; Берем мешок в пэк
Wait(500)
EndIf
CheckLag()
UO.SetCatchBag(CurMesh) ; Всё что сделаем в мешок
Var i=0
Repeat
UO.MSG("Try make the Iron "+Part[i])
UO.AutoMenu('Blacksmithing','Armor')
UO.AutoMenu('Armor','Plate Mail')
UO.AutoMenu('Plate Mail',Part[i])
Repeat
jser=0
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.DeleteJournal()
UO.UseObject('finditem')
Else
UO.Print("Ingots not found")
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.DropHere(CurMesh)
Wait(500)
Return
EndIf
While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
Wait(100)
WEnd
If UO.InJournal("put") Then
jser=1
EndIf
Until jser == 1
i=i+1
UO.CancelMenu()
Until i > 5
UO.MSG("Try make the Iron heater shield")
UO.AutoMenu('Blacksmithing','Shields')
UO.AutoMenu('Shields','heater shield')
UO.DeleteJournal()
Repeat
jser=0
UO.FindType(TCurIng,CCurIng,-1)
IF UO.FindCount() > 0 Then
UO.UseObject('finditem')
Else
UO.Print("Ingots not found")
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.DropHere(CurMesh)
Wait(500)
Return
EndIf
While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
Wait(100)
WEnd
If UO.InJournal("put") Then
jser=1
EndIf
Until jser == 1
UO.CancelMenu()
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.MSG("FULL")
UO.MoveItem(CurMesh,'-1',BagForFull)
Wait(500)
end sub
sub checklag()
repeat
UO.Click("self")
wait(500)
until UO.InJournal(UO.GetName("self"))
end sub


Top
   
 Post subject: Re: Срочно!
PostPosted: 2004-11-05 09:19:04 
Offline

Joined: 2004-04-06 19:53:41
Posts: 82
DIKIY wrote:
Народ, помогите с ковкой брони (цветной.)
Нужен скрипт который куёт 'Platemail (25)' и складывает в сундук..

Этот скрипт не предлагать, не работает!

sub MakeFull()
VAR CCurIng='0x0000', TCurIng=0
VAR jser, WCurIng=0, Kolvo = 150 ; На фулл с запасом
VAR Sunduk = '0x400E7F9F' ; Cундук с инготами
VAR Meshok = '0x0E75' ; Тип мешка для фулов
VAR CIngots = '0x0590' ; Цвет инготов
VAR CurMesh, BagForFull='0x402756AB' ; Сериал мешка и сумки для них

UO.Print("Script started")
DIM TIngots[4], Part[0], CIng[1], WIng[14]

TIngots[0]='0x1BEF' ; Типы инготов
TIngots[1]='0x1BE3'
TIngots[2]='0x1BF5'
TIngots[3]='0x1BE9'

Part[0]='Platemail (25)' ; Названия

CIng[0]='0x0590' ; Цвет инготов

WIng[0]='Rusty' ; Названия инготов
WIng[1]='Old Copper'
WIng[2]='Dull Copper'
WIng[3]='Bronze'
WIng[4]='Shadow'
WIng[5]='Rose'
WIng[6]='Agapite'
WIng[7]='Blood Rock'
WIng[8]='Verite'
WIng[9]='Valorite'
WIng[10]='Mytheril'
WIng[11]='Black Rock'
WIng[12]='Obsidian'
WIng[13]='Plutonium'

UO.IgnoreReset()
UO.DeleteJournal()
UO.UseObject(Sunduk)
For Var k=0 to 3 ; Узнаем тип
UO.FindType(TIngots[k],-1,Sunduk) ; Ищем любые инготы в сундуке
If UO.FindCount() > 0 Then
If UO.GetColor('finditem') == '0x0000' AND k == 0 Then
UO.MSG("I make a iron full!")
MakeIron(TIngots[k],'0x0000',Kolvo,Sunduk,Meshok,BagForFull)
Return
Else
If UO.GetQuantity('finditem') < Kolvo Then ; Для фула мало инготов
UO.MSG("I need "+STR(Kolvo)+" or more ingots")
UO.MoveItem('finditem','0',BagForFull)
Wait(500)
Return
Else
If TCurIng == 0 Then
TCurIng=TIngots[k]
EndIf
If UO.GetColor('finditem') == CIng[2] Then
UO.MSG("Dull Copper? I not make this full.")
UO.MoveItem('finditem',-1,BagForFull)
Wait(500)
Return
EndIf
If UO.GetColor('finditem') == CIng[3] Then
UO.MSG("Bronze? I not make this full.")
UO.MoveItem('finditem',-1,BagForFull)
Wait(500)
Return
EndIf
UO.Print("Avaible is "+STR(UO.GetQuantity('finditem'))+" ingots.")
UO.Print("Ingots type is "+TIngots[k])
EndIf
EndIf
Else
If k == 3 AND TCurIng == 0 Then
UO.Print("No avaible ingots. Script terminated.")
Return
EndIf
EndIf
Wait(1000)
Next
UO.FindType(TCurIng,-1,Sunduk)
For Var n=0 to 13 ; Узнаем цвет
If CIng[n] == UO.GetColor('finditem') Then
WCurIng = WIng[n]
CCurIng = CIng[n]
EndIf
Next
If CCurIng == '0x0000' Then
If TCurIng == TIngots[1] Then
WCurIng = 'Copper'
Else
If TCurIng == TIngots[2] Then
WCurIng = 'Silver'
Else
If TCurIng == TIngots[3] Then
WCurIng = 'Golden'
EndIf
EndIf
EndIf
EndIf
UO.MSG("Found "+(WCurIng)+" ingots.")
UO.FindType(Meshok,-1,Sunduk) ; Ищем мешки для фуллов
If UO.FindCount() == 0 Then
UO.MSG("No bag - NO FULL !!!")
Return
Else
CurMesh=UO.GetSerial('finditem')
EndIf
UO.FindType(TCurIng,CCurIng,Sunduk)
UO.MoveItem('finditem',STR(Kolvo),'backpack ') ; Забираем скока поднимем
Wait(500)
UO.Grab('1',CurMesh) ; Берем мешок в пэк
Wait(500)
CheckLag()
UO.SetCatchBag(CurMesh) ; Всё что сделаем в мешок
Var i=0
Repeat
UO.MSG("Куём "+WCurIng+" "+Part[i])
UO.AutoMenu('Blacksmithing','Colored')
UO.AutoMenu('Colored',WCurIng+' Armor')
UO.AutoMenu(WCurIng+' Armor',WCurIng+' Plate Armor')
UO.AutoMenu(WCurIng+' Plate Armor',Part[i])
Repeat
jser=0
UO.FindType(TCurIng,CCurIng,-1)
IF UO.FindCount() > 0 Then
UO.DeleteJournal()
UO.UseObject('finditem')
Else
UO.Print("Ingots not found")
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.DropHere(CurMesh)
Wait(500)
Return
EndIf
While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
Wait(100)
WEnd
If UO.InJournal("put") Then
jser=1
EndIf
Until jser == 1
i=i+1
UO.CancelMenu()
Until i > 6
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.MSG("FULL")
UO.MoveItem(CurMesh,'-1',BagForFull)
Wait(500)
end sub

sub MakeIron(TCurIng,CCurIng,Kolvo,Sunduk,Meshok,BagForFull)
Var jser, CurMesh = 0

DIM Part[6]

Part[0]='platemail (25)' ; Названия частей фулла
Part[1]='platemail legs'
Part[2]='platemail arms'
Part[3]='plate helm'
Part[4]='platemail gloves'
Part[5]='platemail gorget'

UO.FindType(Meshok,-1,Sunduk)
If UO.FindCount() == 0 Then
UO.MSG("No bag - NO FULL !!!")
Return
Else
CurMesh=UO.GetSerial('finditem')
EndIf

UO.FindType(TCurIng,CCurIng,Sunduk)
If UO.GetQuantity('finditem') < Kolvo Then
UO.MSG("I need "+STR(Kolvo)+" or more ingots")
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
Return
Else
UO.MoveItem('finditem',STR(Kolvo),'backpack ') ; Забираем скока поднимем
Wait(500)
UO.Grab('1',CurMesh) ; Берем мешок в пэк
Wait(500)
EndIf
CheckLag()
UO.SetCatchBag(CurMesh) ; Всё что сделаем в мешок
Var i=0
Repeat
UO.MSG("Try make the Iron "+Part[i])
UO.AutoMenu('Blacksmithing','Armor')
UO.AutoMenu('Armor','Plate Mail')
UO.AutoMenu('Plate Mail',Part[i])
Repeat
jser=0
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.DeleteJournal()
UO.UseObject('finditem')
Else
UO.Print("Ingots not found")
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.DropHere(CurMesh)
Wait(500)
Return
EndIf
While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
Wait(100)
WEnd
If UO.InJournal("put") Then
jser=1
EndIf
Until jser == 1
i=i+1
UO.CancelMenu()
Until i > 5
UO.MSG("Try make the Iron heater shield")
UO.AutoMenu('Blacksmithing','Shields')
UO.AutoMenu('Shields','heater shield')
UO.DeleteJournal()
Repeat
jser=0
UO.FindType(TCurIng,CCurIng,-1)
IF UO.FindCount() > 0 Then
UO.UseObject('finditem')
Else
UO.Print("Ingots not found")
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.DropHere(CurMesh)
Wait(500)
Return
EndIf
While NOT UO.InJournal("put") AND NOT UO.InJournal("failed")
Wait(100)
WEnd
If UO.InJournal("put") Then
jser=1
EndIf
Until jser == 1
UO.CancelMenu()
UO.UnSetCatchBag()
Repeat
UO.FindType(TCurIng,CCurIng,-1)
If UO.FindCount() > 0 Then
UO.MoveItem('finditem','-1',BagForFull) ; Обратно в сундук
Wait(500)
EndIf
Until UO.Count(TCurIng,CCurIng) == 0 ; Все инготы в пэке
UO.MSG("FULL")
UO.MoveItem(CurMesh,'-1',BagForFull)
Wait(500)
end sub
sub checklag()
repeat
UO.Click("self")
wait(500)
until UO.InJournal(UO.GetName("self"))
end sub


у савы в автолоаде вроде был на ковку =) от него и пляши )


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 2 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited