public static void LoadDataFromAukPageRequest(IRealmClient client, RealmPacketIn packet) { packet.Position += 15; AucionCategoties category = (AucionCategoties)packet.ReadInt16(); ++packet.Position; short option1 = packet.ReadInt16(); byte option2 = packet.ReadByte(); byte option3 = packet.ReadByte(); byte curPage = packet.ReadByte(); try { AuctionLevelCriterion requiredLevelCriterion; Asda2ItemAuctionCategory index = Asda2AuctionHandler.CalcCategory(category, option1, option2, option3, out requiredLevelCriterion); SortedSet <Asda2ItemRecord> source = Asda2AuctionMgr.CategorizedItemsById[index][requiredLevelCriterion]; Asda2AuctionHandler.SendItemsOnAukInfoResponse(client, source.Skip <Asda2ItemRecord>((int)curPage * 7).Take <Asda2ItemRecord>(7), (byte)((source.Count - 1) / 7), curPage); } catch { client.ActiveCharacter.YouAreFuckingCheater("Sends wrong auction show items request.", 1); } }
private static Asda2ItemAuctionCategory CalcCategory(AucionCategoties category, short option1, byte option2, byte option3, out AuctionLevelCriterion requiredLevelCriterion) { requiredLevelCriterion = AuctionLevelCriterion.All; switch (category) { case AucionCategoties.Rings: requiredLevelCriterion = (AuctionLevelCriterion)option1; return(Asda2ItemAuctionCategory.Ring); case AucionCategoties.Nackless: requiredLevelCriterion = (AuctionLevelCriterion)option1; return(Asda2ItemAuctionCategory.Nackless); case AucionCategoties.SowelRune: requiredLevelCriterion = (AuctionLevelCriterion)option1; if (option3 == 2) { switch ((Asda2RuneSowelTypes)option2) { case Asda2RuneSowelTypes.Stamina: return(Asda2ItemAuctionCategory.RuneStamina); case Asda2RuneSowelTypes.Dexterity: return(Asda2ItemAuctionCategory.RuneDexterity); case Asda2RuneSowelTypes.Intellect: return(Asda2ItemAuctionCategory.RuneIntellect); case Asda2RuneSowelTypes.Luck: return(Asda2ItemAuctionCategory.RuneLuck); case Asda2RuneSowelTypes.Misc: return(Asda2ItemAuctionCategory.RuneMisc); case Asda2RuneSowelTypes.Spirit: return(Asda2ItemAuctionCategory.RuneSpirit); case Asda2RuneSowelTypes.Strength: return(Asda2ItemAuctionCategory.RuneStrength); default: return(Asda2ItemAuctionCategory.RuneMisc); } } switch ((Asda2MainSowlelTypes)option2) { case Asda2MainSowlelTypes.Staff: return(Asda2ItemAuctionCategory.SowelStaff); case Asda2MainSowlelTypes.AArmor: return(Asda2ItemAuctionCategory.SowelArmor); case Asda2MainSowlelTypes.Bow: return(Asda2ItemAuctionCategory.SowelBow); case Asda2MainSowlelTypes.Crossbow: return(Asda2ItemAuctionCategory.SowelCrossBow); case Asda2MainSowlelTypes.Dexterity: return(Asda2ItemAuctionCategory.SowelDexterity); case Asda2MainSowlelTypes.Intellect: return(Asda2ItemAuctionCategory.SowelIntellect); case Asda2MainSowlelTypes.Luck: return(Asda2ItemAuctionCategory.SowelLuck); case Asda2MainSowlelTypes.MArmor: return(Asda2ItemAuctionCategory.SowelArmor); case Asda2MainSowlelTypes.Misc: return(Asda2ItemAuctionCategory.SowelMisc); case Asda2MainSowlelTypes.OHS: return(Asda2ItemAuctionCategory.SowelOHS); case Asda2MainSowlelTypes.Spear: return(Asda2ItemAuctionCategory.SowelSpear); case Asda2MainSowlelTypes.Spirit: return(Asda2ItemAuctionCategory.SowelSpirit); case Asda2MainSowlelTypes.Stamina: return(Asda2ItemAuctionCategory.SowelStamina); case Asda2MainSowlelTypes.Strength: return(Asda2ItemAuctionCategory.SowelStrengs); case Asda2MainSowlelTypes.THS: return(Asda2ItemAuctionCategory.SowelThs); case Asda2MainSowlelTypes.WArmor: return(Asda2ItemAuctionCategory.SowelArmor); default: return(Asda2ItemAuctionCategory.SowelMisc); } case AucionCategoties.Upgrade: requiredLevelCriterion = (AuctionLevelCriterion)option1; switch ((Asda2UpgradeTypes)option2) { case Asda2UpgradeTypes.Weapon: return(Asda2ItemAuctionCategory.UpgradeWeapon); default: return(Asda2ItemAuctionCategory.UpgradeArmor); } case AucionCategoties.Potion: switch ((Asda2PotionTypes)option2) { case Asda2PotionTypes.Hp: return(Asda2ItemAuctionCategory.PotionHp); case Asda2PotionTypes.Mp: return(Asda2ItemAuctionCategory.PotionMp); case Asda2PotionTypes.Fish: return(Asda2ItemAuctionCategory.PotionFish); default: return(Asda2ItemAuctionCategory.PotionHp); } case AucionCategoties.Crafting: switch ((Asda2CraftItemTypes)option2) { case Asda2CraftItemTypes.Recipe: requiredLevelCriterion = (AuctionLevelCriterion)option1; return(Asda2ItemAuctionCategory.Recipe); case Asda2CraftItemTypes.Materials: return(Asda2ItemAuctionCategory.Materials); default: return(Asda2ItemAuctionCategory.Recipe); } case AucionCategoties.Other: switch ((Asda2OtherItemTypes)option2) { case Asda2OtherItemTypes.Booster: return(Asda2ItemAuctionCategory.Boosters); default: return(Asda2ItemAuctionCategory.Misc); } case AucionCategoties.Premium: return(Asda2ItemAuctionCategory.Premium); case AucionCategoties.Shield: return(Asda2ItemAuctionCategory.Shield); case AucionCategoties.Weapon: switch ((Asda2WeaponCategory)option2) { case Asda2WeaponCategory.Staff: return(Asda2ItemAuctionCategory.WeaponStaff); case Asda2WeaponCategory.Bow: return(Asda2ItemAuctionCategory.WeaponBow); case Asda2WeaponCategory.Crossbow: return(Asda2ItemAuctionCategory.WeaponCrossbow); case Asda2WeaponCategory.OHS: return(Asda2ItemAuctionCategory.WeaponOhs); case Asda2WeaponCategory.Spear: return(Asda2ItemAuctionCategory.WeaponSpear); case Asda2WeaponCategory.THS: return(Asda2ItemAuctionCategory.WeaponThs); default: return(Asda2ItemAuctionCategory.WeaponCrossbow); } case AucionCategoties.Warrior: switch ((Asda2ArmorCategory)option2) { case Asda2ArmorCategory.Armor: return(Asda2ItemAuctionCategory.WarriorArmor); case Asda2ArmorCategory.Boots: return(Asda2ItemAuctionCategory.WarriorBoots); case Asda2ArmorCategory.Gloves: return(Asda2ItemAuctionCategory.WarriorGloves); case Asda2ArmorCategory.Helmet: return(Asda2ItemAuctionCategory.WarriorHelm); case Asda2ArmorCategory.Pants: return(Asda2ItemAuctionCategory.WarriorPants); default: return(Asda2ItemAuctionCategory.WarriorPants); } case AucionCategoties.Archer: switch ((Asda2ArmorCategory)option2) { case Asda2ArmorCategory.Armor: return(Asda2ItemAuctionCategory.ArcherArmor); case Asda2ArmorCategory.Boots: return(Asda2ItemAuctionCategory.ArcherBoots); case Asda2ArmorCategory.Gloves: return(Asda2ItemAuctionCategory.ArcherGloves); case Asda2ArmorCategory.Helmet: return(Asda2ItemAuctionCategory.ArcherHelm); case Asda2ArmorCategory.Pants: return(Asda2ItemAuctionCategory.ArcherPants); default: return(Asda2ItemAuctionCategory.ArcherPants); } case AucionCategoties.Mage: switch ((Asda2ArmorCategory)option2) { case Asda2ArmorCategory.Armor: return(Asda2ItemAuctionCategory.MageArmor); case Asda2ArmorCategory.Boots: return(Asda2ItemAuctionCategory.MageBoots); case Asda2ArmorCategory.Gloves: return(Asda2ItemAuctionCategory.MageGloves); case Asda2ArmorCategory.Helmet: return(Asda2ItemAuctionCategory.MageHelm); case Asda2ArmorCategory.Pants: return(Asda2ItemAuctionCategory.MagePants); default: return(Asda2ItemAuctionCategory.MagePants); } default: return(Asda2ItemAuctionCategory.Misc); } }
private static Asda2ItemAuctionCategory CalcCategory(AucionCategoties category, short option1, byte option2, byte option3, out AuctionLevelCriterion requiredLevelCriterion) { requiredLevelCriterion = AuctionLevelCriterion.All; switch (category) { case AucionCategoties.Warrior: switch (option2) { case 0: return(Asda2ItemAuctionCategory.WarriorHelm); case 1: return(Asda2ItemAuctionCategory.WarriorArmor); case 2: return(Asda2ItemAuctionCategory.WarriorPants); case 3: return(Asda2ItemAuctionCategory.WarriorBoots); case 4: return(Asda2ItemAuctionCategory.WarriorGloves); default: return(Asda2ItemAuctionCategory.WarriorPants); } case AucionCategoties.Archer: switch (option2) { case 0: return(Asda2ItemAuctionCategory.ArcherHelm); case 1: return(Asda2ItemAuctionCategory.ArcherArmor); case 2: return(Asda2ItemAuctionCategory.ArcherPants); case 3: return(Asda2ItemAuctionCategory.ArcherBoots); case 4: return(Asda2ItemAuctionCategory.ArcherGloves); default: return(Asda2ItemAuctionCategory.ArcherPants); } case AucionCategoties.Mage: switch (option2) { case 0: return(Asda2ItemAuctionCategory.MageHelm); case 1: return(Asda2ItemAuctionCategory.MageArmor); case 2: return(Asda2ItemAuctionCategory.MagePants); case 3: return(Asda2ItemAuctionCategory.MageBoots); case 4: return(Asda2ItemAuctionCategory.MageGloves); default: return(Asda2ItemAuctionCategory.MagePants); } case AucionCategoties.Rings: requiredLevelCriterion = (AuctionLevelCriterion)option1; return(Asda2ItemAuctionCategory.Ring); case AucionCategoties.Nackless: requiredLevelCriterion = (AuctionLevelCriterion)option1; return(Asda2ItemAuctionCategory.Nackless); case AucionCategoties.Shield: return(Asda2ItemAuctionCategory.Shield); case AucionCategoties.Weapon: switch (option2) { case 0: return(Asda2ItemAuctionCategory.WeaponOhs); case 1: return(Asda2ItemAuctionCategory.WeaponSpear); case 2: return(Asda2ItemAuctionCategory.WeaponThs); case 3: return(Asda2ItemAuctionCategory.WeaponStaff); case 4: return(Asda2ItemAuctionCategory.WeaponCrossbow); case 5: return(Asda2ItemAuctionCategory.WeaponBow); default: return(Asda2ItemAuctionCategory.WeaponCrossbow); } case AucionCategoties.Premium: return(Asda2ItemAuctionCategory.Premium); case AucionCategoties.SowelRune: requiredLevelCriterion = (AuctionLevelCriterion)option1; if (option3 == (byte)2) { switch (option2) { case 0: return(Asda2ItemAuctionCategory.RuneStrength); case 1: return(Asda2ItemAuctionCategory.RuneDexterity); case 2: return(Asda2ItemAuctionCategory.RuneStamina); case 3: return(Asda2ItemAuctionCategory.RuneSpirit); case 4: return(Asda2ItemAuctionCategory.RuneIntellect); case 5: return(Asda2ItemAuctionCategory.RuneLuck); case 6: return(Asda2ItemAuctionCategory.RuneMisc); default: return(Asda2ItemAuctionCategory.RuneMisc); } } else { switch (option2) { case 0: return(Asda2ItemAuctionCategory.SowelOHS); case 1: return(Asda2ItemAuctionCategory.SowelSpear); case 2: return(Asda2ItemAuctionCategory.SowelThs); case 3: return(Asda2ItemAuctionCategory.SowelBow); case 4: return(Asda2ItemAuctionCategory.SowelCrossBow); case 5: return(Asda2ItemAuctionCategory.SowelStaff); case 6: return(Asda2ItemAuctionCategory.SowelArmor); case 7: return(Asda2ItemAuctionCategory.SowelArmor); case 8: return(Asda2ItemAuctionCategory.SowelArmor); case 9: return(Asda2ItemAuctionCategory.SowelStrengs); case 10: return(Asda2ItemAuctionCategory.SowelDexterity); case 11: return(Asda2ItemAuctionCategory.SowelStamina); case 12: return(Asda2ItemAuctionCategory.SowelSpirit); case 13: return(Asda2ItemAuctionCategory.SowelIntellect); case 14: return(Asda2ItemAuctionCategory.SowelLuck); case 15: return(Asda2ItemAuctionCategory.SowelMisc); default: return(Asda2ItemAuctionCategory.SowelMisc); } } case AucionCategoties.Upgrade: requiredLevelCriterion = (AuctionLevelCriterion)option1; return(option2 == (byte)0 ? Asda2ItemAuctionCategory.UpgradeWeapon : Asda2ItemAuctionCategory.UpgradeArmor); case AucionCategoties.Potion: switch (option2) { case 0: return(Asda2ItemAuctionCategory.PotionHp); case 1: return(Asda2ItemAuctionCategory.PotionMp); case 2: return(Asda2ItemAuctionCategory.PotionFish); default: return(Asda2ItemAuctionCategory.PotionHp); } case AucionCategoties.Crafting: switch (option2) { case 0: requiredLevelCriterion = (AuctionLevelCriterion)option1; return(Asda2ItemAuctionCategory.Recipe); case 1: return(Asda2ItemAuctionCategory.Materials); default: return(Asda2ItemAuctionCategory.Recipe); } case AucionCategoties.Other: return(option2 == (byte)0 ? Asda2ItemAuctionCategory.Boosters : Asda2ItemAuctionCategory.Misc); default: return(Asda2ItemAuctionCategory.Misc); } }