private static void Dismount() { if (World.Player.GetItemOnLayer(Layer.Mount) != null) { ActionQueue.DoubleClick(true, World.Player.Serial); } else { World.Player.SendMessage("You are not mounted."); } }
private static void Loot(Item bag) { if (bag == null) { return; } Item backpack; if (bag != World.Player.Backpack) { backpack = World.FindItem(LootBag.Bag); Clean(backpack, bag.FindItems(i => Looting.Items.Any(l => i.ItemID == l.Graphic && (i.Hue == l.Color || l.Color == 0xFFFF)))); Clean(backpack, bag.FindItems(0x0E34)); //kousky map Clean(backpack, bag.FindItems(0x26B8)); //dusty Clean(backpack, bag.FindItems(0x0E76)); //bagly Clean(backpack, bag.FindItems(0x14F0)); //pska Clean(backpack, bag.FindItems(0x0FAB)); //barvy Clean(backpack, bag.FindItems(0x0DCA, 0x0481)); //bila sit Clean(backpack, bag.FindItems(0x226E, 0x0065)); //kousky sos Clean(backpack, bag.FindItems(0x0F8B, 0x043D)); //moony Clean(backpack, bag.FindItems(0x3155, 0x048D)); //slzy Clean(backpack, bag.FindItems(0x1BC4, 0x0482)); //holy shield Clean(backpack, bag.FindItems(0x0F61, 0x0482)); //holy sword Clean(backpack, bag.FindItems(0x0F87, 0x0000)); //eye of newt Clean(backpack, bag.FindItems(0x1422, 0x0481)); //token Clean(backpack, bag.FindItems(0x1006, 0x0973)); //durab picovina Clean(backpack, bag.FindItems(0x1869, 0x04AE)); //sb Clean(backpack, bag.FindItems(0x0F0E, 0x099F)); //redidlo Clean(backpack, bag.FindItems(0x0EF0, 0x09F0)); //cechy Clean(backpack, bag.FindItems(0x097C, 0x09E2)); //fragmenty Clean(backpack, bag.FindItems(0x26B4, 0x0A11)); //charmy Clean(backpack, bag.FindItems(0x09EC, 0x0265)); //lestidlo 1 Clean(backpack, bag.FindItems(0x09EC, 0x0247)); //lestidlo 2 Clean(backpack, bag.FindItems(0x1877, i => i.Hue != 0)); //draty Clean(backpack, bag.FindItems(0x1F3D, i => i.Hue != 0)); //svitky Clean(backpack, bag.FindItems(IsLevel)); Clean(backpack, bag.FindItems(i => IsShitRunic(i) == null)); if (ConfigEx.GetElement(false, "LootBigDiamonds")) { Clean(backpack, bag.FindItems(IsBigDiamonds)); } foreach (Item item in bag.FindItems(IsSOSCrap)) { WorldEx.SendToClient(new RemoveObject(item.Serial)); } } backpack = World.Player.Backpack; Clean(backpack.FindItem(0x0E3B, 0x0489), bag.FindItems(i => Array.IndexOf(regs, i.ItemID) != -1)); //reagents Clean(backpack.FindItem(0x0E3B, 0x0489), bag.FindItems(0x0E76, i => i.Contains.Count == 0 && !i.IsBlessed())); //empty bags Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x0F0E, 0x0000)); //empty bottles Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x0C64, 0x0490)); //zoogi vejce Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x2808, 0)); //smoke bomb Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x0F0B, 0x0367)); //pet res Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x0F0B, 0x0774)); //repair Clean(backpack.FindItem(0x2252, 0x08AC), bag.FindItems(0x0EF0, 0x0000)); //silver Item quiver = World.Player.GetItemOnLayer(Layer.MiddleTorso); if (quiver == null || (!quiver.IsQuiver() && !IsQuiverSash(quiver))) { quiver = backpack.FindItem(i => i.IsQuiver() || IsQuiverSash(i)); } Clean(quiver, bag.FindItems(i => i.ItemID == 0x0F3F || i.ItemID == 0x1BFB)); //ammo Item gpBag = World.FindItem(ConfigEx.GetElement <uint>(0, "GPBag")); Clean(gpBag, bag.FindItems(0x0EED, 0x0000, i => i.Container != gpBag)); //gp Item whiteBall = backpack.FindItem(0x0E73, 0x0702, recurse: false); if (whiteBall != null) { Clean(backpack, bag.FindItems(0x0E73, 0x0702, i => i != whiteBall)); } else { Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x0E73, 0x0702)); } Item brownBall = backpack.FindItem(0x0E73, 0x0629, recurse: false); if (brownBall != null) { Clean(backpack, bag.FindItems(0x0E73, 0x0629, i => i != brownBall)); } else { Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x0E73, 0x0629)); } Item medovina = backpack.FindItem(0x09EC, 0x002C, recurse: false); if (medovina != null) { Clean(backpack, bag.FindItems(0x09EC, 0x002C, i => i != medovina)); } else { Clean(backpack.FindItem(0x0E79, 0x001A), bag.FindItems(0x09EC, 0x002C)); } Clean(backpack.FindItem(0x0E79, 0x0488), bag.FindItems(i => Array.IndexOf(petPlant, i.ItemID) != -1)); //petplant Clean(backpack.FindItem(0x24D7, 0x0556), bag.FindItems(i => (IsFish(i.ItemID) && !IsBigFish(i)) || (i.ItemID == 0x0DCA && i.Hue == 0x08A0))); //fishbag + site Clean(backpack.FindItem(0x09B0, 0x048E), bag.FindItems(IsShitResource)); //food+resources Clean(backpack.FindItem(0x2252, 0x0492), bag.FindItems(0x14EC, 0)); //mapky if (!ConfigEx.GetElement(false, "CleanerSOS")) { Clean(backpack.FindItem(0x22C5, IsSOSBook), bag.FindItems(0x14ED, recurse: false)); //sosky vsechny } else { Clean(backpack.FindItem(0x09B0, 0x048E), bag.FindItems(0x14ED, 0, recurse: false)); //trash obyc Clean(backpack.FindItem(0x22C5, IsSOSBook), bag.FindItems(0x14ED, i => i.Hue != 0, recurse: false)); //uklid ostatni } foreach (Item item in bag.FindItems(0x099F))//flasky se soskama { ActionQueue.DoubleClick(true, item.Serial); } foreach (Item item in backpack.FindItems(0x0ECF, 0)) //kosti { Clean(backpack.FindItem(0x09B0, 0x048E), item.FindItems(0x1EFD, 0x04D1)); Clean(backpack.FindItem(0x09B0, 0x048E), item.FindItems(0x170D, 0x0000)); Clean(backpack.FindItem(0x09B0, 0x048E), item.FindItems(0x1539, 0x045E)); Clean(backpack.FindItem(0x09B0, 0x048E), item.FindItems(0x171B, 0x0006)); Clean(backpack.FindItem(0x09B0, 0x048E), item.FindItems(IsSextant)); } }