public EvolutionSet7(byte[] data) { if (data.Length != SIZE) { return; } PossibleEvolutions = new EvolutionMethod[ENTRY_COUNT]; for (int i = 0; i < data.Length; i += ENTRY_SIZE) { PossibleEvolutions[i / ENTRY_SIZE] = new EvolutionMethod { Method = BitConverter.ToUInt16(data, i + 0), Argument = BitConverter.ToUInt16(data, i + 2), Species = BitConverter.ToUInt16(data, i + 4), Form = (sbyte)data[i + 6], Level = data[i + 7], }; } }
public EvolutionSet6(byte[] data) { if (data.Length != SIZE) { return; } //int[] argEvos = { 6, 8, 16, 17, 18, 19, 20, 21, 22, 29, 30, 31, 32, 33, 34 }; PossibleEvolutions = new EvolutionMethod[ENTRY_COUNT]; for (int i = 0; i < data.Length; i += ENTRY_SIZE) { PossibleEvolutions[i / ENTRY_SIZE] = new EvolutionMethod { Method = BitConverter.ToUInt16(data, i + 0), Argument = BitConverter.ToUInt16(data, i + 2), Species = BitConverter.ToUInt16(data, i + 4), // Copy //Level = BitConverter.ToUInt16(data, i + 2), }; // Argument is used by both Level argument and Item/Move/etc. Clear if appropriate. //if (argEvos.Contains(PossibleEvolutions[i / SIZE].Method)) // PossibleEvolutions[i / SIZE].Level = 0; } }