Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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;
        }