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 } }