public BattleBingoCard(int index, ISO iso) { this.index = index; this.iso = iso; StartingPokemon = new BattleBingoPokemon(StartOffset + BingoCardFirstPokemonOffset, iso); CouponRewards = new int[NumberOfBingoCouponRewards]; var panels = new List <BattleBingoPanel>(); for (int i = 1; i < NumberOfPokemonPanels; i++) { var pokemon = new BattleBingoPokemon(StartOffset + BingoCardFirstPokemonOffset + (i * SizeOfBattleBingoPokemonData), iso); panels.Add(new BattleBingoPanel(pokemon, iso)); } var mysteryOffset = StartOffset + BingoCardFirstMysteryPanelOffset; for (int i = 0; i < NumberOfMysteryPanels; i++) { var itemType = (BattleBingoItemType)iso.CommonRel.ExtractedFile.GetByteAtOffset(mysteryOffset++); var panelPosition = iso.CommonRel.ExtractedFile.GetByteAtOffset(mysteryOffset++); var panel = new BattleBingoPanel(itemType, iso); if (panelPosition < panels.Count) { panels.Insert(panelPosition, panel); } else { panels.Add(panel); } } Panels = panels.ToArray(); for (int i = 0; i < NumberOfBingoCouponRewards; i++) { CouponRewards[i] = iso.CommonRel.ExtractedFile.GetUShortAtOffset(StartOffset + BingoCardFirstCouponsRewardOffset + i * 2); } }
public BattleBingoPanel(BattleBingoPokemon bingoPokemon, ISO iso) { PanelType = BattleBingoPanelType.Pokemon; BingoPokemon = bingoPokemon; }