Esempio n. 1
0
        private void OnPokemonEncounter(object sender, PokemonEncounteredEventArgs e)
        {
            var manager = (IManager)sender;

            lock (PokemonDataInformation)
            {
                var iv = manager.CalculateIVPerfection(e.WildPokemon.PokemonData).Data;
                PokemonDataInformation.Add(new PokemonLocationInformation(e, iv));
            }
        }
        public PokemonLocationInformation(PokemonEncounteredEventArgs e, double iv)
        {
            EncounterId  = Base64Encode(e.WildPokemon.EncounterId.ToString());
            SpawnPointId = e.WildPokemon.SpawnPointId;
            Iv           = iv;
            Cp           = e.WildPokemon.PokemonData.Cp;
            Latitude     = e.WildPokemon.Latitude;
            Longitude    = e.WildPokemon.Longitude;
            PokemonName  = (int)e.WildPokemon.PokemonData.PokemonId;
            Move1        = (int)e.WildPokemon.PokemonData.Move1;
            Move2        = (int)e.WildPokemon.PokemonData.Move2;
            LastModified = UnixTimeStampToDateTime(e.WildPokemon.LastModifiedTimestampMs / 1000).ToString("yyyy-M-d HH:mm:ss", CultureInfo.InvariantCulture);

            DisappearTime =
                e.WildPokemon.TimeTillHiddenMs > 0
                ?
                DateTime.UtcNow.AddMilliseconds(e.WildPokemon.TimeTillHiddenMs).ToString("yyyy-M-d HH:mm:ss", CultureInfo.InvariantCulture)
                :
                DateTime.UtcNow.AddMinutes(30).ToString("yyyy-M-d HH:mm:ss", CultureInfo.InvariantCulture);

            Attack  = e.WildPokemon.PokemonData.IndividualAttack;
            Defense = e.WildPokemon.PokemonData.IndividualDefense;
            Stamina = e.WildPokemon.PokemonData.IndividualStamina;
        }