public void Load(byte[] data, int start) { if (start + 0x22 > data.Length) throw new ArgumentOutOfRangeException("start"); Name = new EncodedString5(data, start, 0x10); Version = (Versions)data[0x10 + start]; Language = (Languages)data[0x11 + start]; Country = data[0x12 + start]; Region = data[0x13 + start]; OT = BitConverter.ToUInt32(data, 0x14 + start); byte[] trendyPhrase = new byte[8]; Array.Copy(data, 0x18 + start, trendyPhrase, 0, 8); PhraseLeader = new TrendyPhrase5(trendyPhrase); Gender = data[0x20 + start]; Unknown = data[0x21 + start]; }
public void Load(byte[] data, int start) { if (start + 0x3c > data.Length) throw new ArgumentOutOfRangeException("start"); Species = BitConverter.ToUInt16(data, 0x00 + start); HeldItem = BitConverter.ToUInt16(data, 0x02 + start); Moveset = new ushort[4]; for (int x = 0; x < 4; x++) { Moveset[x] = BitConverter.ToUInt16(data, 0x04 + x * 2 + start); } OT = BitConverter.ToUInt32(data, 0x0c + start); Personality = BitConverter.ToUInt32(data, 0x10 + start); IVs = BitConverter.ToUInt32(data, 0x14 + start); EVs = new byte[6]; for (int x = 0; x < 6; x++) { EVs[x] = data[0x18 + x + start]; } Unknown1 = data[0x1e + start]; Language = (Languages)data[0x1f + start]; Ability = data[0x20 + start]; Happiness = data[0x21 + start]; Nickname = new EncodedString5(data, 0x22 + start, 0x16); Unknown2 = BitConverter.ToUInt32(data, 0x38); }