Ковка фуллов

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
autopilot
Posts: 57
Joined: 2004-07-25 05:16:04

Ковка фуллов

Post by autopilot »

Народ а есть у кого скрипт на ковку фуллов ? Запарился пилотом ковать !
OldArtes
Posts: 22
Joined: 2004-09-25 04:16:39

Re: Ковка фуллов

Post by OldArtes »

autopilot wrote:Народ а есть у кого скрипт на ковку фуллов ? Запарился пилотом ковать !
На попробуй этот

Code: Select all

sub MakeFull() 
	VAR CCurIng='0x0000', TCurIng=0
	VAR jser, WCurIng=0, Kolvo = 200		; На фулл с запасом
	VAR Sunduk = '0x4024386F'				; Cундук с инготами
	VAR Meshok = '0x0E76'					; Тип мешка для фулов
	VAR CIngots = '0x0000'					; Цвет инготов
	VAR CurMesh, BagForFull='0x4014B1CF'	; Сериал мешка и сумки для них
	
	UO.Print("Script started")
	DIM TIngots[4], Part[7], CIng[14], WIng[14]
	
	TIngots[0]='0x1BEF'				; Типы инготов
	TIngots[1]='0x1BE3'
	TIngots[2]='0x1BF5'
	TIngots[3]='0x1BE9'
	
	Part[0]='Platemail (25'			; Названия частей фулла
	Part[1]='Platemail Legs'
	Part[2]='Heater Shield'
	Part[3]='Platemail Arms'
	Part[4]='Plate Helm'
	Part[5]='Platemail Gauntlets'
	Part[6]='Platemail Gorget'
	
	CIng[0]='0x0750'				; Цвета инготов
	CIng[1]='0x0590'
	CIng[2]='0x060A'
	CIng[3]='0x0488'
	CIng[4]='0x096B'
	CIng[5]='0x0014'
	CIng[6]='0x0193'
	CIng[7]='0x04C2'
	CIng[8]='0x07D5'
	CIng[9]='0x00CE'
	CIng[10]='0x052D'
	CIng[11]='0x0455'
	CIng[12]='0x0028'
	CIng[13]='0x08AF'
	
	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("Try make the "+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
И пользуйся поиском!!
OldArtes
Posts: 22
Joined: 2004-09-25 04:16:39

Post by OldArtes »

Кенчно этот скрипт не я писал а нашол на ПОиску так что незнаю как он работает.... и вобще я писать таолком скрипты еумею :(
Defjammer
Posts: 9
Joined: 2004-08-22 09:30:08

Post by Defjammer »

фул ексепт на МЕ

Code: Select all

sub full() 
# напишите ,addobject box и щелкните на мешочек в который будут складываться готовые изделия
createbp:
UO.Exec ("canceltarget")
UO.Exec ("cancelmenu")
UO.Exec("waitmenu 'What do you wish to make?' 'Armor' 'Select armor' 'Platemail' 'Select item' 'Dwarven Platemail Breastplate'")
UO.Exec("waittargettype 0x1bf2")
wait (2000)
UO.Exec("useobject _0x13e3")
wait (2000)
wait(8000);
UO.Exec("cancelmenu")
Wait(300)

#***************************  advanced time controller ************************************************


while not uo.dead()
wait(1000)
if uo.injournal("item and") or uo.injournal("destroy") then
goto deleting
end if
wend


deleting: 
if not uo.injournal("exceptional") then
UO.Exec("canceltarget")
UO.Exec("waittargettype 0x1416") #удаление бракованного армора
Wait(300) 
UO.Exec("usetype 0x0fbb")  
Wait(1000) 
goto createbp
else 
UO.exec("moveitem ^0x1416 1 box")
End if
UO.deletejournal()

#-----------------------------------next part--------------------------------------------
createlegs:
UO.Exec ("canceltarget")
UO.Exec ("cancelmenu")
UO.Exec("waitmenu 'What do you wish to make?' 'Armor' 'Select armor' 'Platemail' 'Select item' 'Dwarven Platemail Legs'")
UO.Exec("waittargettype 0x1bf2")
wait (2000)
UO.Exec("useobject _0x13e3")
wait (2000)
wait(8000);
UO.Exec("cancelmenu")
Wait(300)
#***************************  advanced time controller ************************************************
while not uo.dead()
wait(1000)
if uo.injournal("item and") or uo.injournal("destroy") then
goto deleting2
end if
wend
deleting2: 
if not uo.injournal("exceptional") then
UO.Exec("canceltarget")
UO.Exec("waittargettype 0x141A") #удаление бракованного армора
Wait(300) 
UO.Exec("usetype 0x0fbb")  
Wait(1000) 
goto createlegs
else 
UO.exec("moveitem ^0x141A 1 box")
End if
UO.deletejournal()
wait(3000)
#-----------------------------------next part--------------------------------------------
createarms:
UO.Exec ("canceltarget")
UO.Exec ("cancelmenu")
UO.Exec("waitmenu 'What do you wish to make?' 'Armor' 'Select armor' 'Platemail' 'Select item' 'Dwarven Platemail Arms'")
UO.Exec("waittargettype 0x1bf2")
wait (2000)
UO.Exec("useobject _0x13e3")
wait (2000)
wait(8000);
UO.Exec("cancelmenu")
Wait(300)
#***************************  advanced time controller ************************************************
while not uo.dead()
wait(1000)
if uo.injournal("item and") or uo.injournal("destroy") then
goto deleting3
end if
wend
deleting3: 
if not uo.injournal("exceptional") then
UO.Exec("canceltarget")
UO.Exec("waittargettype 0x1417") #удаление бракованного армора
Wait(300) 
UO.Exec("usetype 0x0fbb")  
Wait(1000) 
goto createarms
else 
UO.exec("moveitem ^0x1417 1 box")
End if
UO.deletejournal()
wait(3000)
#-----------------------------------next part--------------------------------------------
creategloves:
UO.Exec ("canceltarget")
UO.Exec ("cancelmenu")
UO.Exec("waitmenu 'What do you wish to make?' 'Armor' 'Select armor' 'Platemail' 'Select item' 'Dwarven Platemail Gloves'")
UO.Exec("waittargettype 0x1bf2")
wait (2000)
UO.Exec("useobject _0x13e3")
wait (2000)
wait(8000);
UO.Exec("cancelmenu")
Wait(300)
#***************************  advanced time controller ************************************************
while not uo.dead()
wait(1000)
if uo.injournal("item and") or uo.injournal("destroy") then
goto deleting4
end if
wend
deleting4: 
if not uo.injournal("exceptional") then
UO.Exec("canceltarget")
UO.Exec("waittargettype 0x1418") #удаление бракованного армора
Wait(300) 
UO.Exec("usetype 0x0fbb")  
Wait(1000) 
goto creategloves
else 
UO.exec("moveitem ^0x1418 1 box")
End if
UO.deletejournal()
wait(3000)
#-----------------------------------next part--------------------------------------------
creategorget:
UO.Exec ("canceltarget")
UO.Exec ("cancelmenu")
UO.Exec("waitmenu 'What do you wish to make?' 'Armor' 'Select armor' 'Platemail' 'Select item' 'Platemail Gorget'")
UO.Exec("waittargettype 0x1bf2")
wait (2000)
UO.Exec("useobject _0x13e3")
wait (2000)
wait(8000);
UO.Exec("cancelmenu")
Wait(300)
#***************************  advanced time controller ************************************************
while not uo.dead()
wait(1000)
if uo.injournal("item and") or uo.injournal("destroy") then
goto deleting5
end if
wend
deleting5: 
if not uo.injournal("exceptional") then
UO.Exec("canceltarget")
UO.Exec("waittargettype 0x1413") #удаление бракованного армора
Wait(300) 
UO.Exec("usetype 0x0fbb")  
Wait(1000) 
goto creategorget
else 
UO.exec("moveitem ^0x1413 1 box")
End if
UO.deletejournal()
wait(3000)
#-----------------------------------next part--------------------------------------------
createhelm:
UO.Exec ("canceltarget")
UO.Exec ("cancelmenu")
UO.Exec("waitmenu 'What do you wish to make?' 'Armor' 'Select armor' 'Helmets' 'Select item' 'Dwarven Plate Helm'")
UO.Exec("waittargettype 0x1bf2")
wait (2000)
UO.Exec("useobject _0x13e3")
wait (2000)
wait(8000);
UO.Exec("cancelmenu")
Wait(300)
#***************************  advanced time controller ************************************************
while not uo.dead()
wait(1000)
if uo.injournal("item and") or uo.injournal("destroy") then
goto deleting6
end if
wend
deleting6: 
if not uo.injournal("exceptional") then
UO.Exec("canceltarget")
UO.Exec("waittargettype 0x1419") #удаление бракованного армора
Wait(300) 
UO.Exec("usetype 0x0fbb")  
Wait(1000) 
goto createhelm
else 
UO.exec("moveitem ^0x1419 1 box")
End if
UO.deletejournal()

wait(3000)
MessageBox("Full Exceptional Dwarven Plate Armor Done!")
end sub
(с) Омни-К
Post Reply