public ItemPockets?getItemPocket(ItemCategory item) { ItemPockets?itemPocket; switch (item) {//([\w]*) = [\d]*, //PocketId = ([\d]*) case ItemCategory.COLLECTIBLES: itemPocket = (ItemPockets)1; break; case ItemCategory.EVOLUTION: itemPocket = (ItemPockets)1; break; case ItemCategory.SPELUNKING: itemPocket = (ItemPockets)1; break; case ItemCategory.HELD_ITEMS: itemPocket = (ItemPockets)1; break; case ItemCategory.CHOICE: itemPocket = (ItemPockets)1; break; case ItemCategory.EFFORT_TRAINING: itemPocket = (ItemPockets)1; break; case ItemCategory.BAD_HELD_ITEMS: itemPocket = (ItemPockets)1; break; case ItemCategory.TRAINING: itemPocket = (ItemPockets)1; break; case ItemCategory.PLATES: itemPocket = (ItemPockets)1; break; case ItemCategory.SPECIES_SPECIFIC: itemPocket = (ItemPockets)1; break; case ItemCategory.TYPE_ENHANCEMENT: itemPocket = (ItemPockets)1; break; case ItemCategory.LOOT: itemPocket = (ItemPockets)1; break; case ItemCategory.MULCH: itemPocket = (ItemPockets)1; break; case ItemCategory.DEX_COMPLETION: itemPocket = (ItemPockets)1; break; case ItemCategory.SCARVES: itemPocket = (ItemPockets)1; break; case ItemCategory.JEWELS: itemPocket = (ItemPockets)1; break; case ItemCategory.MEGA_STONES: itemPocket = (ItemPockets)1; break; case ItemCategory.VITAMINS: itemPocket = (ItemPockets)2; break; case ItemCategory.HEALING: itemPocket = (ItemPockets)2; break; case ItemCategory.PP_RECOVERY: itemPocket = (ItemPockets)2; break; case ItemCategory.REVIVAL: itemPocket = (ItemPockets)2; break; case ItemCategory.STATUS_CURES: itemPocket = (ItemPockets)2; break; case ItemCategory.SPECIAL_BALLS: itemPocket = (ItemPockets)3; break; case ItemCategory.STANDARD_BALLS: itemPocket = (ItemPockets)3; break; case ItemCategory.APRICORN_BALLS: itemPocket = (ItemPockets)3; break; case ItemCategory.ALL_MACHINES: itemPocket = (ItemPockets)4; break; case ItemCategory.EFFORT_DROP: itemPocket = (ItemPockets)5; break; case ItemCategory.MEDICINE: itemPocket = (ItemPockets)5; break; case ItemCategory.OTHER: itemPocket = (ItemPockets)5; break; case ItemCategory.IN_A_PINCH: itemPocket = (ItemPockets)5; break; case ItemCategory.PICKY_HEALING: itemPocket = (ItemPockets)5; break; case ItemCategory.TYPE_PROTECTION: itemPocket = (ItemPockets)5; break; case ItemCategory.BAKING_ONLY: itemPocket = (ItemPockets)5; break; case ItemCategory.ALL_MAIL: itemPocket = (ItemPockets)6; break; case ItemCategory.STAT_BOOSTS: itemPocket = (ItemPockets)7; break; case ItemCategory.FLUTES: itemPocket = (ItemPockets)7; break; case ItemCategory.MIRACLE_SHOOTER: itemPocket = (ItemPockets)7; break; case ItemCategory.EVENT_ITEMS: itemPocket = (ItemPockets)8; break; case ItemCategory.GAMEPLAY: itemPocket = (ItemPockets)8; break; case ItemCategory.PLOT_ADVANCEMENT: itemPocket = (ItemPockets)8; break; case ItemCategory.UNUSED: itemPocket = (ItemPockets)8; break; case ItemCategory.APRICORN_BOX: itemPocket = (ItemPockets)8; break; case ItemCategory.DATA_CARDS: itemPocket = (ItemPockets)8; break; case ItemCategory.XY_UNKNOWN: itemPocket = (ItemPockets)8; break; default: itemPocket = null; break; } return(itemPocket); }
public SortedList <Items, byte> this[ItemPockets pocket] { get { //All items found in the bag List <Items> bag = new List <Items>(); //List of items that belong in this pocket, with quantity found SortedList <Items, byte> items = new SortedList <Items, byte>(); //foreach (KeyValuePair<Items, byte> Item in Game.GameData.Bag_Items) foreach (Items Item in this.items) { //Item item = global::Item.GetItem(Item.Key); ItemData item = Game.ItemData[Item]; if (Item != Items.NONE) { switch (item.Pocket) { case ItemPockets.MISC: if (pocket == ItemPockets.MISC) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; case ItemPockets.MEDICINE: if (pocket == ItemPockets.MEDICINE) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; case ItemPockets.POKEBALL: if (pocket == ItemPockets.POKEBALL) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; case ItemPockets.MACHINE: if (pocket == ItemPockets.MACHINE) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; case ItemPockets.BERRY: if (pocket == ItemPockets.BERRY) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; case ItemPockets.MAIL: if (pocket == ItemPockets.MAIL) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; case ItemPockets.BATTLE: if (pocket == ItemPockets.BATTLE) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; case ItemPockets.KEY: if (pocket == ItemPockets.KEY) { if (!bag.Contains(Item)) { items.Add(Item, (byte)this.items.Count(i => i == Item)); bag.Add(Item); } } break; default: break; } } } ; return(items); } }
public static void Initialize(string CacheFolder = "") { if (Connector.isInitialized) { throw new Exception("PokeAPI is initialized and can only be initialized once"); //May seems a bit over kill but this is nessecery for corrent usage. } #region "Structure" Connector.Berries = new Berries(); Connector.BerryFirmnesses = new BerryFirmnesses(); Connector.BerryFlavors = new BerryFlavors(); Connector.ContestNames = new ContestNames(); Connector.ContestEffects = new ContestEffects(); Connector.SuperContestEffects = new SuperContestEffects(); Connector.EncounterMethods = new EncounterMethods(); Connector.EncounterConditions = new EncounterConditions(); Connector.EncounterConditionValues = new EncounterConditionValues(); Connector.EvolutionChains = new EvolutionChains(); Connector.EvolutionTrigger = new EvolutionTrigger(); Connector.Generations = new Generations(); Connector.Pokedexes = new Pokedexes(); Connector.Versions = new Versions(); Connector.VersionGroups = new VersionGroups(); Connector.Items = new Items(); Connector.ItemAttributes = new ItemAttributes(); Connector.ItemCategories = new ItemCategories(); Connector.ItemFlingEffects = new ItemFlingEffects(); Connector.ItemPockets = new ItemPockets(); Connector.Locations = new Locations(); Connector.LocationAreas = new LocationAreas(); Connector.PalParkAreas = new PalParkAreas(); Connector.Regions = new Regions(); Connector.Machines = new Machines(); Connector.Moves = new Moves(); Connector.MoveAilments = new MoveAilments(); Connector.MoveBattleStyles = new MoveBattleStyles(); Connector.MoveCategories = new MoveCategories(); Connector.MoveDamageClasses = new MoveDamageClasses(); Connector.MoveLearnMethods = new MoveLearnMethods(); Connector.MoveTargets = new MoveTargets(); Connector.Abilities = new Abilities(); Connector.Characteristics = new Characteristics(); Connector.EggGroups = new EggGroups(); Connector.Genders = new Genders(); Connector.GrowthRates = new GrowthRates(); Connector.Natures = new Natures(); Connector.PokeathlonStats = new PokeathlonStats(); Connector.Pokemons = new Pokemons(); Connector.PokemonColors = new PokemonColors(); Connector.PokemonForms = new PokemonForms(); Connector.PokemonHabitats = new PokemonHabitats(); Connector.PokemonShapes = new PokemonShapes(); Connector.PokemonSpecies = new PokemonSpecies(); Connector.Stats = new Stats(); Connector.Types = new Types(); Connector.Languages = new Languages(); #endregion if (CacheFolder == "") { Connector.CacheFolder = AppDomain.CurrentDomain.BaseDirectory + "pokeAPI//"; } else { if (!System.IO.Directory.Exists(CacheFolder)) { throw new Exception("Directory : " + CacheFolder + " was not found"); } Connector.CacheFolder = CacheFolder; } Cacher.Initialize(); Connector.isInitialized = true; }