private HashSet<uint> _itemUseOnGoldenCarp = new HashSet<uint>() {
74866 // Golden Carp
};
private HashSet<uint> _itemUseOnEmperorSalmon = new HashSet<uint>() {
74859 // Emperor Salmon
};
private HashSet<uint> _itemUseOnKrasarangPaddlefish = new HashSet<uint>() {
74865 // Krasarang Paddlefish
};
private HashSet<uint> _itemRequiresSleep = new HashSet<uint>() {
61387, // Hidden Stash
67495, // Strange Bloated Stomach
67539, // Tiny Treasure Chest
72201, // Plump Intestines
87391, // Plundered Treasure (Luck of the Lotus Buff)
88496, // Sealed Crate (MoP version)
89613, // Cache of Treasures
90625, // Treasures of the Vale (Daily Quest Reward)
90716, // Good Fortune
90840 // Marauder's Gleaming Sack of Gold (World Boss gold drop)
};
private HashSet<uint> _destroyItems = new HashSet<uint>() {
45188, //Whitered Kelp
45189, //Torn Sail
45190, //Driftwood
45191, //Empty Clam
45194, //Tangled Fishing Line
45195, //Empty Rum Bottle
45196, //Tattered Cloth
45197, //Tree Branch
45198, //Weeds
45199, //Old Boot
45200, //Sickly Fish
45201, //Rock
45202, //Water Snail
19221, //Darkmoon Special Reserve
19222, //Cheap Beer
19223, //Darkmoon Dog
19224, //Red Hot Wings
19225, //Deep Fried Candybar
19299, //Fizzy Faire Drink
19300, //Bottled Winterspring Water
19304, //Spiced Beef Jerky
19305, //Pickled Kodo Foot
19306, //Crunchy Frog
21151, //Rumsey Rum Black Label
28284, //Don Carlos Tequila
44940, //Corn-Breaded Sausage
44941, //Fresh-Squeezed Limeade
73260, //Salty Sea Dog
74822 //Sasparilla Sinker
};
private static WoWItem emptyGoldenCarpContainer = null;
private static WoWItem emptyEmperorSalmonContainer = null;
private static WoWItem emptyKrasarangPaddlefishContainer = null;
public override void Pulse()
{
if (_init)
if (StyxWoW.Me.IsActuallyInCombat
|| StyxWoW.Me.Mounted
|| StyxWoW.Me.IsDead
|| StyxWoW.Me.IsGhost
) {
return;
}
if (InventoryCheck) { // Loot Event has Finished
uint goldenCarpCount = 0; // Golden carp count value
foreach (WoWItem item in ObjectManager.GetObjectsOfType<WoWItem>()) { // iterate over every item
if (item != null && item.BagSlot != -1) { // check if item exists and is in bag
if(item.Entry == (uint)87686){ // Empty Golden Carp Conatainer
emptyGoldenCarpContainer = item;
}
if (_itemUseOnGoldenCarp.Contains(item.Entry)) { // stacks of 60
goldenCarpCount += item.StackCount;
if (goldenCarpCount >= 60) {
if (emptyGoldenCarpContainer != null){
if (emptyGoldenCarpContainer.BagSlot != -1){
this.useItem(emptyGoldenCarpContainer);
} else {
emptyGoldenCarpContainer = null;
}
}
}
} else if (_destroyItems.Contains(item.Entry)) {
this.destroyItem(item);
}
}
}
uint emperorSalmonCount = 0; // Emperor Salmon count value
foreach (WoWItem item in ObjectManager.GetObjectsOfType<WoWItem>()) { // iterate over every item
if (item != null && item.BagSlot != -1 && StyxWoW.Me.FreeNormalBagSlots >= 1) { // check if item exists and is in bag and we have space
if(item.Entry == (uint)87680){ // Empty Emperor Salmon Container
emptyEmperorSalmonContainer = item;
}
if (_itemUseOnEmperorSalmon.Contains(item.Entry)) { // stacks of 20
emperorSalmonCount += item.StackCount;
if (emperorSalmonCount >= 20) {
if (emptyEmperorSalmonContainer != null){
if (emptyEmperorSalmonContainer.BagSlot != -1){
this.useItem(emptyEmperorSalmonContainer);
} else {
emptyEmperorSalmonContainer = null;
}
}
}
} else if (_destroyItems.Contains(item.Entry)) {
this.destroyItem(item);
}
}
}
uint krasarangPaddlefishCount = 0; // Krasarang Paddlefish count value
foreach (WoWItem item in ObjectManager.GetObjectsOfType<WoWItem>()) { // iterate over every item
if (item != null && item.BagSlot != -1) { // check if item exists and is in bag
if(item.Entry == (uint)87685){ // Empty Krasarang Paddlefish Container
emptyKrasarangPaddlefishContainer = item;
}
if (_itemUseOnKrasarangPaddlefish.Contains(item.Entry)) { // stacks of 20
krasarangPaddlefishCount += item.StackCount;
if (krasarangPaddlefishCount >= 20) {
if (emptyKrasarangPaddlefishContainer != null){
if (emptyKrasarangPaddlefishContainer.BagSlot != -1){
this.useItem(emptyKrasarangPaddlefishContainer);
} else {
emptyKrasarangPaddlefishContainer = null;
}
}
}
} else if (_destroyItems.Contains(item.Entry)) {
this.destroyItem(item);
}
}
}
InventoryCheck = false;
StyxWoW.SleepForLagDuration();
}
}