public void Load(byte[] data, int start) { if (start + 0xe4 > data.Length) { throw new ArgumentOutOfRangeException("start"); } Party = new BattleTowerPokemon4[3]; for (int x = 0; x < 3; x++) { Party[x] = new BattleTowerPokemon4(Pokedex, data, start + x * 0x38); } Profile = new BattleTowerProfile4(data, 0xa8 + start); byte[] trendyPhrase = new byte[8]; Array.Copy(data, 0xca + start, trendyPhrase, 0, 8); PhraseChallenged = new TrendyPhrase4(trendyPhrase); trendyPhrase = new byte[8]; Array.Copy(data, 0xd2 + start, trendyPhrase, 0, 8); PhraseWon = new TrendyPhrase4(trendyPhrase); trendyPhrase = new byte[8]; Array.Copy(data, 0xda + start, trendyPhrase, 0, 8); PhraseLost = new TrendyPhrase4(trendyPhrase); Unknown3 = BitConverter.ToUInt16(data, 0xe2 + start); }
public BattleTowerPokemon4 Clone() { uint ivsField = (uint)(IVs.ToInt32() & 0x3fffffffu) | (IvFlags & 0xc0000000u); ushort[] moveset = GetArrayFromMoves(Moves); byte ppUps = GetPpUpsFromMoves(Moves); BattleTowerPokemon4 result = new BattleTowerPokemon4(m_pokedex, (ushort)SpeciesID, (ushort)HeldItemID, moveset, TrainerID, Personality, ivsField, EVs.ToArray(), ppUps, Language, (byte)AbilityID, Happiness, NicknameEncoded); return(result); }
public BattleTowerPokemon4 Clone() { BattleTowerPokemon4 result = new BattleTowerPokemon4(); result.Species = Species; result.HeldItem = HeldItem; result.Moveset = Moveset.ToArray(); result.OT = OT; result.Personality = Personality; result.IVs = IVs; result.EVs = EVs.ToArray(); result.Unknown1 = Unknown1; result.Language = Language; result.Ability = Ability; result.Happiness = Happiness; result.Nickname = new EncodedString4(Nickname.RawData.ToArray()); return(result); }
public void Load(byte[] data, int start) { if (start + 0xe4 > data.Length) throw new ArgumentOutOfRangeException("start"); Party = new BattleTowerPokemon4[3]; for (int x = 0; x < 3; x++) { Party[x] = new BattleTowerPokemon4(data, start + x * 0x38); } Profile = new BattleTowerProfile4(data, 0xa8 + start); byte[] trendyPhrase = new byte[8]; Array.Copy(data, 0xca + start, trendyPhrase, 0, 8); PhraseChallenged = new TrendyPhrase4(trendyPhrase); trendyPhrase = new byte[8]; Array.Copy(data, 0xd2 + start, trendyPhrase, 0, 8); PhraseWon = new TrendyPhrase4(trendyPhrase); trendyPhrase = new byte[8]; Array.Copy(data, 0xda + start, trendyPhrase, 0, 8); PhraseLost = new TrendyPhrase4(trendyPhrase); Unknown3 = BitConverter.ToUInt16(data, 0xe2 + start); }
// todo: add IVs class with indexer? // byte myHp = myPokemon.IVs[Stats.HP]; public byte IV(Stats stat) { return(BattleTowerPokemon4.UnpackIV(IVs, stat)); }
public BattleTowerPokemon4 Clone() { BattleTowerPokemon4 result = new BattleTowerPokemon4(); result.Species = Species; result.HeldItem = HeldItem; result.Moveset = Moveset.ToArray(); result.OT = OT; result.Personality = Personality; result.IVs = IVs; result.EVs = EVs.ToArray(); result.Unknown1 = Unknown1; result.Language = Language; result.Ability = Ability; result.Happiness = Happiness; result.Nickname = new EncodedString4(Nickname.RawData.ToArray()); return result; }