예제 #1
0
파일: MemeKey.cs 프로젝트: ZeroX1ng/PKHeX
        // Constructor
        public MemeKey(MemeKeyIndex key)
        {
            DER = GetMemeData(key);
            var _N = DER.AsSpan(0x18, 0x61).ToArray();
            var _E = DER.AsSpan(0x7B, 3).ToArray();

            _N.AsSpan().Reverse();
            _E.AsSpan().Reverse();
            N = new BigInteger(_N);
            E = new BigInteger(_E);

            if (key == MemeKeyIndex.PokedexAndSaveFile)
            {
                var _D = D_3.AsSpan().ToArray();
                _D.AsSpan().Reverse();
                D = new BigInteger(_D);
            }
            else
            {
                D = INVALID;
            }
        }
예제 #2
0
        // Constructor
        public MemeKey(MemeKeyIndex key)
        {
            DER = GetMemeData(key);
            var _N = new byte[0x61];
            var _E = new byte[0x3];

            Array.Copy(DER, 0x18, _N, 0, 0x61);
            Array.Copy(DER, 0x7B, _E, 0, 3);
            Array.Reverse(_N);
            N = new BigInteger(_N);
            Array.Reverse(_E);
            E = new BigInteger(_E);

            if (key == MemeKeyIndex.PokedexAndSaveFile)
            {
                var _D = (byte[])D_3.Clone();
                Array.Reverse(_D);
                D = new BigInteger(_D);
            }
            else
            {
                D = INVALID;
            }
        }