Bowcraft

Details #

All scripts have been collected over the years and if available will still contain the creators details, these scripts may run well or not.

Scripts #

bowcraftxbow.sc #

sub Main()
La:
UO.Waittargettype(0x1bdd)
UO.exec("waitmenu 'What would you like to make?' 'Crossbow'")
UO.Usetype(0x0f51)
wait(7000);
GOTO La
end sub

Bowcraftshafts.sc #

sub main()
	var i = 0
	var time

	UO.Set("finddistance", "1")
	UO.Set("quiet", "1")

	Repeat
		UO.DeleteJournal()
		
		UO.FindType("0x1BDD", -1, 'ground')
		If UO.FindCount() < 1 Then
			armsLore()
		End If
		
		UO.Grab(1, 'finditem')
		time = 0
		Repeat
			UO.FindType("0x1BDD", -1, 'my')
			Wait(200)
			time = time + 200
		Until UO.FindCount() > 0 || time > 10000
		
		UO.WaitMenu('What', 'Shafts')
		UO.WaitTargetType(0x1BDD)
		UO.UseType(0x0F51)
		
		time = 0
		Repeat
			wait(200)
			time = time + 200
		Until UO.InJournal("destroy|place") || time > 3000
	Until FALSE
end sub

sub armsLore()
	Repeat
		UO.DeleteJournal()
		UO.WaitTargetType(0x13E3)
		UO.UseSkill("Arms Lore")
		Wait(5000)
	Until FALSE
end sub

Bowcraftarrows.sc #

sub main()
	var i = 0
	var time

	UO.Set("finddistance", "1")
	UO.Set("quiet", "1")

	Repeat
		UO.DeleteJournal()
		
		UO.FindType("0x1BD4", -1, 'ground')
		If UO.FindCount() < 1 Then
			armsLore()
		End If
		
		UO.Grab(1, 'finditem')
		time = 0
		Repeat
			UO.FindType("0x1BD4", -1, 'my')
			Wait(200)
			time = time + 200
		Until UO.FindCount() > 0 || time > 10000
		
		UO.WaitMenu('What', 'Arrow')
		UO.WaitTargetType(0x1BD1)
		UO.UseType(0x1BD4)
		
		time = 0
		Repeat
			wait(200)
			time = time + 200
		Until UO.InJournal("destroy|create") || time > 3000
	Until FALSE
end sub

sub armsLore()
	Repeat
		UO.DeleteJournal()
		UO.WaitTargetType(0x13E3)
		UO.UseSkill("Arms Lore")
		Wait(5000)
	Until FALSE
end sub

Bowcraft2.sc #

sub main()
	var currentBag, bagType, i
	
	UO.UnsetReceivingContainer()
	UO.Set("quiet", "0")
	
	#Select Bag of bags
	UO.AddObject('Bags')
	While UO.Targeting()
		Wait(500)
	Wend
	
	bagType = UO.GetGraphic('Bags')
	
	UO.Set("quiet", "0")
	
	Repeat
		#grab one bag from bag and set it as the receiving container
		UO.FindType("bagType", -1, 'Bags')
		If UO.FindCount() Then
			currentBag = UO.GetSerial('finditem')
		Else
			armsLore()
		End If
		
		UO.SetReceivingContainer(currentBag)
		UO.MoveItem(currentBag,'0','ground')

		#Make carpet
		i = 0
		Repeat
			UO.DeleteJournal()
			UO.WaitTargetType(0x1BDD)
			UO.WaitMenu('What', 'Crossbow')
			#UO.OnGump('anygump', '1')
			UO.UseType(0x0F51)
			Repeat
				wait(200)
			Until UO.InJournal("destroy|make|create|moved|full|place")
			If UO.InJournal("create|make|place") Then
				i = i + 1
				grabItem()
			End If
			UO.FindType("0x0F4F", -1, currentBag)
		Until UO.FindCount() > 147 || UO.SkillVal("Bowcraft") > (69.9 * 10)
	Until FALSE
end sub

sub grabItem()
	var count = UO.Count(0x0F4F)
	var i
	For i = 1 To count
		UO.FindType("0x0F4F", -1, 'my')
		UO.Grab(0, 'finditem')
		UO.Ignore('finditem')
	Next
	UO.IgnoreReset()
end sub

sub armsLore()
	Repeat
		UO.WaitTargetType(0x13E3)
		UO.UseSkill("Arms Lore")
		Wait(5000)
	Until FALSE
end sub

Bowcraft3.sc #

sub main()
	var i = 0
	var time
	var exceptional = 0
	Repeat
		UO.DeleteJournal()
		UO.Print("Loop " + str(i))
		UO.WaitTargetType(0x1bdd)
		UO.WaitMenu('What', 'Crossbow')
		UO.OnGump('anygump', '1')
		UO.UseType(0x0f51)
		time = 0
		Repeat
			wait(200)
			time = time + 200
		Until UO.InJournal("destroy|create") || time > 10000
		If UO.InJournal("create") Then
			i = i + 1
		End If
	Until UO.SkillVal("Bowcraft") > (70 * 100) || i > 130
	armsLore()
end sub

sub armsLore()	
	#May change item to use Arms Lore with. 0x13E3 is a Smith's Hammer.
	Repeat
		UO.DeleteJournal()
		UO.WaitTargetType(0x13E3)
		UO.UseSkill("Arms Lore")
		Wait(5000)
	Until FALSE
end sub

Powered by BetterDocs