All pastes #945365 Raw Edit

Something

public text v1 · immutable
·published 2008-03-16 21:36 UTC
rendered paste body
objectdef oForce inherits oBase
{
	variable int PetTame
	variable string PetWanted
	variable string PetFood
	variable string InnKeep
	variable bool InnKeeperSet
	variable string HearthArea
	method Pulse()
	{
		echo "PUSHIT"
	}

	member SomeThingToDo()
	{
		variable int Count=1
		variable string questt1
		variable bool HaveIT
		variable int CurrentSlt
		variable string CrapMatch

		questt1:Set[Taming the Beast]

		;lets set some values for the inventory

		if ${UIElement[cmbSpec@Overview@Pages@OpenBot].Selection}!=1
			UIElement[cmbSpec@Overview@Pages@OpenBot]:SetSelection[1]

		if ${UIElement[cmbAutoSell@Config@InvPages@Inventory@Pages@OpenBot].SelectedItem.Value}!=3
			UIElement[cmbAutoSell@Config@InvPages@Inventory@Pages@OpenBot]:SelectItem[4]

		if ${UIElement[leaveFreeSlots@Config@InvPages@Inventory@Pages@OpenBot].SelectedItem.Value}!=2
			UIElement[leaveFreeSlots@Config@InvPages@Inventory@Pages@OpenBot]:SelectItem[3]

		if !${UIElement[chkTakeFMToPOI@Blacklist@POIPages@POIs@Pages@openbot].Checked}
			UIElement[chkTakeFMToPOI@Blacklist@POIPages@POIs@Pages@openbot]:SetChecked

		if !${UIElement[chkTakeFMToGrind@Blacklist@POIPages@POIs@Pages@openbot].Checked}
			UIElement[chkTakeFMToGrind@Blacklist@POIPages@POIs@Pages@openbot]:SetChecked

		if ${Inventory.lowestRpairPct}!=40
		{
			UIElement[overAllRepairPCT@Config@InvPages@Inventory@Pages@OpenBot]:SetText[30]
			UIElement[lowestRepairPCT@Config@InvPages@Inventory@Pages@OpenBot]:SetText[40]
			Inventory.lowestRpairPct:Set[40]
			Inventory.overAllRepairPCT:Set[30]
		}

		if ${Me.Level}==10&&${PetTame}<2
		{
			;do we have the quest for the pet, the first part, ? taming the beast
			if ${Me.Quest[Taming the beast](exists)}
			{
				HaveIT:Set[TRUE]
				do
				{
					CrapMatch:Set[${WoWScript["GetQuestLogLeaderBoard(1,${Count})"]}]
					;echo crap match ${CrapMatch}
					if ${CrapMatch.Equal[Tame a Dire Mottled Boar]}
					{
						CurrentSlt:Set[3099]
					}
					if ${CrapMatch.Equal[Tame a Surf Crawler]}
					{
						CurrentSlt:Set[3107]
					}
					if ${CrapMatch.Equal[Tame an Armored Scorpid]}
					{
						CurrentSlt:Set[3126]
					}
				}
				while ${Count:Inc}<25&&${CurrentSlt}<1
			}

			if !${Grind.LocationSetName.Find[hunter-pet-quest]}
			{
				Grind.CurrentGrind:Set[hunter-pet-quest]
			}

			;CurrentSlt:Set[${Me.Quest[${questt1}].RequiredSlaughter[1]}]
			echo "current SLT ${CurrentSlt}"

			if ${HaveIT}&&${CurrentSlt}==3099&!${This.PetQuestComplete["${questt1}"]}
			{
				echo "Looking for boar"
				PetWanted:Set[Dire Mottled Boar]

				if !${UIElement[chkIgnoreMin@Config@Pages@openbot].Checked}
					UIElement[chkIgnoreMin@Config@Pages@openbot]:SetChecked

				while !${Grind.HotSpotName.Find[quest2]}
				{
					Grind.CurrentGrind:JumpTo[1]
				}
			}

			if ${HaveIT}&&${CurrentSlt}==3107&&!${This.PetQuestComplete["${questt1}"]}
			{
				if ${Me.Pet.Name.Find[Boar]}
					WoWScript PetDismiss()

				PetWanted:Set[Surf Crawler]
				echo "Get surf Crawler"
				while !${Grind.HotSpotName.Find[quest3]}
				{
					Grind.CurrentGrind:JumpTo[1]
				}
			}
			if ${HaveIT}&&${CurrentSlt}==3126&&!${This.PetQuestComplete["${questt1}"]}
			{
				if ${Me.Pet.Name.Find[Surf]}
					WoWScript PetDismiss()

				PetWanted:Set[Armored Scorpid]
				echo "Armored Scorpid"
				while !${Grind.HotSpotName.Find[quest4]}
					Grind.CurrentGrind:JumpTo[1]
				}
				echo "HAVEIT ${HaveIT} PETEXISTS ${Me.Pet(exists)} currentslt ${CurrentSlt} ${PetTame}
				if ${HaveIT}&&${This.PetQuestComplete["${questt1}"]}||(!${HaveIT}&&${PetTame}<1)
				{
					while !${Grind.HotSpotName.Find[quest1]}
					{
						Grind.CurrentGrind:JumpTo[-1]
					}
				}
				echo training the beast ${Me.Quest[Training the beast](exists)} complete ${This.PetQuestComplete[Training the beast]}
			if ${Me.Quest[Training the beast](exists)}&&!${This.PetQuestComplete[Training the beast]}
			{
				if ${Me.Pet.Name.Find[Scorpid]}
					WoWScript PetDismiss()

				while !${Grind.HotSpotName.Find[quest5]}
				{
					echo "Looking to Train the beast"
					Grind.CurrentGrind:JumpTo[1]
				}
			}
			if ${Spell[Feed Pet](exists)}
			{
				echo "INIT TO WINIT"
				PetTame:Set[1]
				PetWanted:Set[Dire Mottled Boar]
				while !${Grind.HotSpotName.Find[quest2]}
				{
					Grind.CurrentGrind:JumpTo[1]
				}
			}
			if ${PetTame}>0&&${Me.Pet(exists)}
			{
				echo "PET TAME SET 2"
				Grind:GetValidLocations
				PetTame:Set[2]
			}
			;go to that location if we don't
		}

		This:CheckVendor

		;echo "SOMETHING TO DO"
		if ${CursorItem}
		{
			CursorItem:Delete
			return 1
		}
		if ${Item[Shredder Operating Manual](exists)}
		{
			Item[Shredder Operating Manual]:PickUp
			return 1
		}
		if ${Item[OOX-17/TN Distress Beacon](exists)}
		{
			Item[OOX-17/TN Distress Beacon]:PickUp
			return 1
		}
		if ${Item[A Mangled Journal](exists)}
		{
			Item[A Mangled Journal]:PickUp
			return 1
		}
		if ${Item[Blood Shard](exists)}
		{
			Item[Blood Shard]:PickUp
			return 1
		}
		if ${Item[Small Furry Paw](exists)}
		{
			Item[Small Furry Paw]:PickUp
			return 1
		}
		if ${Item[Steel Arrowhead](exists)}
		{
			Item[Steel Arrowhead]:PickUp
			return 1
		}
		if ${Item[Stone Arrowhead](exists)}
		{
			Item[Stone Arrowhead]:PickUp
			return 1
		}
		return 0
	}

	method BlackListLoot()
	{
		GlobalBlacklist:Insert[${POI.GUID},3600000]
	}

	method MapperChange()
	{
		if ${Me.Level}==14 || ${Me.Level}==27 || ${Me.Level}==29 || ${Me.Level}==34 || ${Me.Level}==39 || ${Me.Level}==48 || ${Me.Level}==54
		{
			Mapper:Load
		}
	}

	method CheckVendor()
	{

		variable string AmmoMerch
		variable string AmmoItem
		variable string AmmoType
		variable string FoodMerch
		variable string FoodItem
		variable int FoodStacks
		variable int AmmoStacks

		;variable string InnKeep
		;variable bool InnKeeperSet
		;variable string HearthArea
		;echo "IN RESTOCK"
		if ${Me.Level}<=7
		{
			if !${Inventory.AmmoMerch.Equal[Duokna]} || !${PetFood.Equal[Tough Jerky]} && ${Inventory.FoodMerch.Equal[Zlagk]}
			{
				AmmoMerch:Set[Duokna]
				AmmoStacks:Set[2]
				AmmoItem:Set[Rough Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Zlagk]
				FoodItem:Set[Tough Jerky]
				FoodStacks:Set[1]
				PetFood:Set[Tough Jerky]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=8&&${Me.Level}<=13
		{
			if !${Inventory.AmmoMerch.Equal[Ghrawt]} || !${PetFood.Equal[Haunch of Meat]} && ${Inventory.FoodMerch.Equal[Innkeeper Grosk]}
			{
				echo "SETTING1"

				;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Grosk]
				HearthArea:Set[Razor Hill]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				AmmoMerch:Set[Ghrawt]
				AmmoStacks:Set[3]
				AmmoItem:Set[Rough Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Innkeeper Grosk]
				FoodItem:Set[Haunch of Meat]
				FoodStacks:Set[3]
				PetFood:Set[Haunch of Meat]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=14&&${Me.Level}<=24
		{
			if !${Inventory.AmmoMerch.Equal[Barg]} || !${PetFood.Equal[Mutton Chop]} && ${Inventory.FoodMerch.Equal[Zargh]}
			{
				;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Boorand Plainswind	]
				HearthArea:Set[The Crossroads]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				echo "SETTING2"
				AmmoMerch:Set[Barg]
				AmmoStacks:Set[3]
				AmmoItem:Set[Sharp Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Zargh]
				FoodItem:Set[Mutton Chop]
				FoodStacks:Set[3]
				This.PetFood:Set[Mutton Chop]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=25&&${Me.Level}<=28
		{
			if !${Inventory.AmmoMerch.Equal[Borand]} || !${PetFood.Equal[Wild Hog Shank]} && ${Inventory.FoodMerch.Equal[Krond]}
			{
				;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Jayka]
				HearthArea:Set[Sun Rock Retreat]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				echo "SETTING3"
				AmmoMerch:Set[Borand]
				AmmoStacks:Set[3]
				AmmoItem:Set[Sharp Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Krond]
				FoodItem:Set[Wild Hog Shank]
				FoodStacks:Set[3]
				PetFood:Set[Wild Hog Shank]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=29&&${Me.Level}<=33
		{
			if !${Inventory.AmmoMerch.Equal[Burkrum]} || !${PetFood.Equal[Wild Hog Shank]} && ${Inventory.FoodMerch.Equal[Innkeeper Kaylisk]}
			{
				;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Kaylisk]
				HearthArea:Set[Splintertree Post]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				echo "SETTING4"
				AmmoMerch:Set[Burkrum]
				AmmoStacks:Set[6]
				AmmoItem:Set[Razor Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Innkeeper Kaylisk]
				FoodItem:Set[Wild Hog Shank]
				PetFood:Set[Wild Hog Shank]
				FoodStacks:Set[3]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=34 && ${Me.Level}<=39
		{
			if !${Inventory.AmmoMerch.Equal[Tukk]} || !${PetFood.Equal[Stormwind Brie]} && ${Inventory.FoodMerch.Equal[Innkeeper Sikewa]}
			{
				;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Sikewa]
				HearthArea:Set[Shadowprey Village]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				echo "SETTING5"
				AmmoMerch:Set[Tukk]
				AmmoStacks:Set[6]
				AmmoItem:Set[Razor Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Innkeeper Sikewa]
				FoodItem:Set[Stormwind Brie]
				PetFood:Set[Stormwind Brie]
				FoodStacks:Set[3]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=40 && ${Me.Level}<=48
		{
			if !${Inventory.AmmoMerch.Equal[Cawind Trueaim]} || !${PetFood.Equal[Soft Banana Bread]} && ${Inventory.FoodMerch.Equal[Innkeeper Greul]}
			{
				;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Greul]
				HearthArea:Set[Camp Mojache]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				echo "SETTING6"
				AmmoMerch:Set[Cawind Trueaim]
				AmmoStacks:Set[6]
				AmmoItem:Set[Jagged Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Innkeeper Greul]
				FoodItem:Set[Soft Banana Bread]
				PetFood:Set[Soft Banana Bread]
				FoodStacks:Set[3]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=49 && ${Me.Level}<=53
		{
			if !${Inventory.AmmoMerch.Equal[Jabbey]} || !${PetFood.Equal[Roasted Quail]} && ${Inventory.FoodMerch.Equal[Dirk Quickcleave]}
			{
			;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Fizzgrimble]
				HearthArea:Set[Gadgetzan]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				echo "SETTING7"
				AmmoMerch:Set[Jabbey]
				AmmoStacks:Set[6]
				AmmoItem:Set[Jagged Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Dirk Quickcleave]
				FoodItem:Set[Roasted Quail]
				PetFood:Set[Roasted Quail]
				FoodStacks:Set[4]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}

		if ${Me.Level}>=53 && ${Me.Level}<=60
		{
			if !${Inventory.AmmoMerch.Equal[Nergal]} || !${PetFood.Equal[Roasted Quail]} && ${Inventory.FoodMerch.Equal[Nergal]}
			{
				;ok innk settings go in here flag is always true
				InnKeep:Set[Innkeeper Fizzgrimble]
				HearthArea:Set[Gadgetzan]
				InnKeeperSet:Set[TRUE]
				;end innk settings

				echo "SETTING8"
				AmmoMerch:Set[Nergal]
				AmmoStacks:Set[6]
				AmmoItem:Set[Jagged Arrow]
				AmmoType:Set[ARROW]
				FoodMerch:Set[Nergal]
				FoodItem:Set[Roasted Quail]
				PetFood:Set[Roasted Quail]
				FoodStacks:Set[3]
				This:SetVendor[${AmmoMerch},${FoodMerch},${FoodItem},${AmmoType},${AmmoItem},${FoodStacks},${AmmoStacks}]
			}
		}
		;echo "${PetFood}"
		return
	}

	method SetVendor(string AmmoMerch,string FoodMerch,string FoodItem,string AmmoType,string AmmoItem,int FoodStacks,int AmmoStacks)
	{
		;lets clear our restock list
		; Apoc: Switched from an iterated clear to a less intensive clear.
		RestockList:Clear

		;ok set it up
		LavishSettings[Settings]:AddSetting[AmmoMerch,${AmmoMerch}]

		UIElement[AmmoMerchant@Config@InvPages@Inventory@Pages@OpenBot]:SetText[${AmmoMerch}]
		UIElement[lstListed@Restock@InvPages@Inventory@Pages@OpenBot]:ClearItems
		UIElement[lstListed@Restock@InvPages@Inventory@Pages@OpenBot]:AddItem[${AmmoItem}]
		UIElement[lstListed@Restock@InvPages@Inventory@Pages@OpenBot]:SelectItem[1]

		Inventory.RestockList:Set[${AmmoItem},${AmmoItem},1,${AmmoStacks},${AmmoType}]
		LavishSettings[Settings]:AddSetting[FoodMerch,${FoodMerch}]
		Inventory.FoodMerch:Set[${FoodMerch}]
		Inventory.AmmoMerch:Set[${AmmoMerch}]

		UIElement[FoodMerchant@Config@InvPages@Inventory@Pages@OpenBot]:SetText[${FoodMerch}]
		UIElement[lstListed@Restock@InvPages@Inventory@Pages@OpenBot]:AddItem[${FoodItem}]
		UIElement[lstListed@Restock@InvPages@Inventory@Pages@OpenBot]:SelectItem[2]

		Inventory.RestockList:Set[${FoodItem},${FoodItem},1,${FoodStacks},FOOD]
	}

	member PetQuestComplete(string questname)
	{
		do
		{
			variable int count = 1

			if ${WoWScript["GetQuestLogTitle(${count})",1].Find[${questname}]}
			{
				wowscript "SelectQuestLogEntry(${count})"

				if ${WoWScript["GetQuestLogTitle(${count})",7]}
				{
					echo "QUESTCOMPLETE LOCATED"
					return 1
				}
			}
			count:Inc
		}
		while ${WoWScript[GetNumQuestLogEntries(),2]} >= ${count}

		return 0
	}
}