public Type(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["id"]), LocalizedStringFromReader(reader, "Name_"), (DamageClass)Convert.ToInt32(reader["DamageClass"])) { }
public Ability(Pokedex pokedex, int value, LocalizedString name) : base(pokedex) { Value = value; Name = name; // todo: Nice description text }
public PokemonBase(Pokedex.Pokedex pokedex, BinaryReader data) : base() { m_pokedex = pokedex; Initialize(); Load(data); }
public Type(Pokedex pokedex, int id, LocalizedString name, DamageClass damage_class) : base(pokedex) { ID = id; Name = name; DamageClass = damage_class; }
public Ability(Pokedex pokedex, IDataReader reader) : this( pokedex, Convert.ToInt32(reader["Value"]), LocalizedStringFromReader(reader, "Name_") ) { }
public MoveSlot(Pokedex.Pokedex pokedex, int moveId, byte ppUps, byte remainingPp) { m_pokedex = pokedex; Initialize(); MoveID = moveId; PPUps = ppUps; RemainingPP = remainingPp; }
public Item(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["id"]), reader["Value3"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value3"]), reader["Value4"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value4"]), reader["Value5"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value5"]), reader["Value6"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value6"]), Convert.ToInt32(reader["Price"]), LocalizedStringFromReader(reader, "Name_")) { }
public Family(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["id"]), Convert.ToInt32(reader["BasicMale"]), Convert.ToInt32(reader["BasicFemale"]), Convert.ToInt32(reader["BabyMale"]), Convert.ToInt32(reader["BabyFemale"]), Convert.ToInt32(reader["Incense"]), Convert.ToByte(reader["GenderRatio"])) { }
public Form(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["id"]), Convert.ToInt32(reader["NationalDex"]), Convert.ToByte(reader["FormValue"]), LocalizedStringFromReader(reader, "Name_"), reader["FormSuffix"].ToString(), Convert.ToInt32(reader["Height"]), Convert.ToInt32(reader["Weight"]), Convert.ToInt32(reader["Experience"])) { }
public Location(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["id"]), Convert.ToInt32(reader["region_id"]), (int ?)DatabaseExtender.Cast<uint ?>(reader["Value3"]), (int?)DatabaseExtender.Cast<uint?>(reader["Value_Colo"]), (int?)DatabaseExtender.Cast<uint?>(reader["Value_XD"]), (int?)DatabaseExtender.Cast<uint?>(reader["Value4"]), (int?)DatabaseExtender.Cast<uint?>(reader["Value5"]), (int?)DatabaseExtender.Cast<uint?>(reader["Value6"]), LocalizedStringFromReader(reader, "Name_")) { }
public Move(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["Value"]), Convert.ToInt32(reader["type_id"]), LocalizedStringFromReader(reader, "Name_"), (DamageClass)Convert.ToInt32(reader["DamageClass"]), Convert.ToInt32(reader["Damage"]), Convert.ToInt32(reader["PP"]), Convert.ToInt32(reader["Accuracy"]), Convert.ToInt32(reader["Priority"]), (BattleTargets)Convert.ToInt32(reader["Target"])) { }
public Ribbon(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["id"]), LocalizedStringFromReader(reader, "Name_"), LocalizedStringFromReader(reader, "Description_"), reader["Position3"] is DBNull ? null : (int?)Convert.ToInt32(reader["Position3"]), reader["Position4"] is DBNull ? null : (int?)Convert.ToInt32(reader["Position4"]), reader["Position5"] is DBNull ? null : (int?)Convert.ToInt32(reader["Position5"]), reader["Position6"] is DBNull ? null : (int?)Convert.ToInt32(reader["Position6"]), reader["Value3"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value3"]), reader["Value4"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value4"]), reader["Value5"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value5"]), reader["Value6"] is DBNull ? null : (int?)Convert.ToInt32(reader["Value6"])) { }
public Item(Pokedex pokedex, int id, int ? value3, int ? value4, int ? value5, int ? value6, int price, LocalizedString name) : base(pokedex) { ID = id; // todo: Since ID numbers stopped moving around in Gen 4 -> 5, we // only need to store value3, value4 and a minGenerationRequired field Value3 = value3; Value4 = value4; Value5 = value5; Value6 = value6; Price = price; Name = name; }
public Form(Pokedex pokedex, int id, int species_id, byte value, LocalizedString name, String suffix, int height, int weight, int experience) : base(pokedex) { m_species_pair = Species.CreatePair(m_pokedex); m_lazy_pairs.Add(m_species_pair); ID = id; m_species_pair.Key = species_id; Value = value; Name = name; Suffix = suffix; Height = height; Weight = weight; Experience = experience; }
public TrainerMemo(Pokedex.Pokedex pokedex, LocationNumbering numbering, DateTime ? time_egg_obtained, DateTime ? time_encountered, int location_egg_obtained_id, int location_encountered_id, bool is_hatched, byte level_encountered) { m_pokedex = pokedex; m_location_egg_obtained_pair = Location.CreatePairForLocationNumbering(m_pokedex, () => Numbering); m_location_encountered_pair = Location.CreatePairForLocationNumbering(m_pokedex, () => Numbering); Numbering = numbering; TimeEggObtained = time_egg_obtained; TimeEncountered = time_encountered; m_location_egg_obtained_pair.Key = location_egg_obtained_id; m_location_encountered_pair.Key = location_encountered_id; IsHatched = is_hatched; LevelEncountered = level_encountered; }
public FormStats(Pokedex pokedex, int form_id, Generations min_generation, int type1, int type2, IntStatValues base_stats, ByteStatValues reward_evs) : base(pokedex) { m_form_pair = Form.CreatePair(m_pokedex); m_type1_pair = Type.CreatePair(m_pokedex); m_type2_pair = Type.CreatePair(m_pokedex); m_lazy_pairs.Add(m_form_pair); m_lazy_pairs.Add(m_type1_pair); m_lazy_pairs.Add(m_type2_pair); m_form_pair.Key = form_id; MinGeneration = min_generation; m_type1_pair.Key = type1; m_type2_pair.Key = type2; BaseStats = base_stats; RewardEvs = reward_evs; }
public Location(Pokedex pokedex, int id, int region_id, int ? value3, int ? value_colo, int ? value_xd, int ? value4, int ? value5, int ? value6, LocalizedString name) : base(pokedex) { m_region_pair = Region.CreatePair(m_pokedex); m_lazy_pairs.Add(m_region_pair); ID = id; m_region_pair.Key = region_id; Value3 = value3; ValueColo = value_colo; ValueXd = value_xd; Value4 = value4; Value5 = value5; Value6 = value6; Name = name; }
private void InitializeLevelUpList() { uint levelCount = 100; int xpRequiredFirstLevel = 200; int[] levelUpList = new int[levelCount]; levelUpList[0] = xpRequiredFirstLevel; for (uint i = 1; i <= levelCount - 1; i++) { levelUpList[i] = Convert.ToInt32(levelUpList[i - 1] * 1.2); } Pokedex.SetLevelUpList(levelUpList); }
public Ribbon(Pokedex pokedex, int id, LocalizedString name, LocalizedString description, int ? position3, int ? position4, int ? position5, int ? position6, int ? value3, int ? value4, int ? value5, int ? value6) : base(pokedex) { ID = id; Name = name; Description = description; Position3 = position3; Position4 = position4; Position5 = position5; Position6 = position6; Value3 = value3; Value4 = value4; Value5 = value5; Value6 = value6; }
public DetailPage(Pokemon pokemon) { InitializeComponent(); var pokedex = new Pokedex(); var info = pokedex.GetPokemonInfo(pokemon); imgDetail.Source = pokemon.ImageUrl; lblNamePokemon.Text = pokemon.Name; lblWeight.Text = info.WeightEu; lblHeight.Text = info.HeightEu; lblDetail.Text = info.PokedexEntries.OmegaRuby.En; this.Title = "Info Pokemon"; //var navigationPage = Application.Current.MainPage as NavigationPage; //navigationPage.BarBackgroundColor = Color.White; //navigationPage.BarTextColor = Color.Blue; //navigationPage.BarTextColor = Color.Blue; //navigationPage.bac }
public void TransferPokemon(Pokedex pokedexPlayer, Pokedex pokedexFriend, PokedexPokemon pokedexPokemon) { pokedexPokemon.PokedexID = pokedexFriend.ID; pokedexPlayer.Pokemons.Remove(pokedexPokemon); pokedexFriend.Pokemons.Add(pokedexPokemon); db.PokedexPokemon.Attach(pokedexPokemon); db.Entry(pokedexPokemon).State = EntityState.Modified; db.Pokedex.Attach(pokedexPlayer); db.Entry(pokedexPlayer).State = EntityState.Modified; db.Pokedex.Attach(pokedexFriend); db.Entry(pokedexFriend).State = EntityState.Modified; db.SaveChanges(); }
static void Main(string[] args) { Console.WriteLine("Welcome to Assignment 5 - Pokemon Edition"); PokemonReader reader = new PokemonReader(); Pokedex pokedex = reader.Load("pokemon151.xml"); // List out all the pokemons loaded foreach (Pokemon pokemon in pokedex.Pokemons) { Console.WriteLine(pokemon.Name); } // TODO: Add a pokemon bag with 2 bulbsaur, 1 charlizard, 1 mew and 1 dragonite // and save it out and load it back and list it out. Console.ReadKey(); }
public Move(Pokedex pokedex, int id, int type_id, LocalizedString name, DamageClass damage_class, int damage, int pp, int accuracy, int priority, BattleTargets target) : base(pokedex) { m_type_pair = Type.CreatePair(m_pokedex); m_lazy_pairs.Add(m_type_pair); ID = id; m_type_pair.Key = type_id; Name = name; DamageClass = damage_class; Damage = damage; PP = pp; Accuracy = accuracy; Priority = priority; Target = target; // todo: Nice description text }
public void Deserialize() { OpenFileDialog openFileDialog = new OpenFileDialog { Filter = "xml files |*.xml" }; openFileDialog.ShowDialog(); if (openFileDialog.FileName != null && openFileDialog.FileName != "") { using (TextReader reader = new StreamReader(openFileDialog.FileName)) { XmlSerializer deserializer = new XmlSerializer(typeof(Pokedex)); Pokedex obj = (Pokedex)deserializer.Deserialize(reader); Data = obj; } } }
private void DatagridPokedex_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (datagridPokedex.SelectedItem is PokedexEntry pokedexEntry) { Pokedex pokedexPokemon = DatabaseOperations.GetPokedexEntry(pokedexEntry.PokedexNumber); List <Found> pokemonFoundAreas = DatabaseOperations.GetPlayerPokedexEntriesAreas(pokedexPokemon.Id); string areaIds = string.Empty; // Alle unieke area id's van de geselecteerd pokemon ophalen. foreach (var item in pokemonFoundAreas) { if (!areaIds.Contains(item.AreaId.ToString())) { areaIds += item.Area.Name + ", "; } } // Laatste komma verwijderen if (areaIds != string.Empty) { areaIds = areaIds.Substring(0, areaIds.Length - 2); } else { areaIds = "unknown"; } // Summary opvullen als speler de pokemon al gezien heeft. if (pokedexEntry.Encountered == true) { lblSummary.Content = "Summary:" + Environment.NewLine + Environment.NewLine + "Area: " + areaIds + Environment.NewLine + pokedexPokemon.Description + Environment.NewLine + "Height: " + pokedexPokemon.AvgHeight + "m" + Environment.NewLine + "Weigth: " + pokedexPokemon.AvgWeight + "kg"; imgPokemon.Source = new BitmapImage(new Uri(@"images\sprites\" + pokedexPokemon.ImgReference, UriKind.Relative)); } else { lblSummary.Content = string.Empty; imgPokemon.Source = null; } } }
public MethodResult <AccountExportModel> GetAccountExport() { if (Stats == null) { LogCaller(new LoggerEventArgs(String.Format("No stats found for {0}. Please update details", UserSettings.PtcUsername), LoggerTypes.Warning)); return(new MethodResult <AccountExportModel>()); } if (AllItems == null || AllItems.Count == 0) { LogCaller(new LoggerEventArgs(String.Format("No items found for {0}. Please update details", UserSettings.PtcUsername), LoggerTypes.Warning)); return(new MethodResult <AccountExportModel>()); } if (Pokedex == null || Pokedex.Count == 0) { LogCaller(new LoggerEventArgs(String.Format("No pokedex found for {0}. Please update details", UserSettings.PtcUsername), LoggerTypes.Warning)); return(new MethodResult <AccountExportModel>()); } AccountExportModel exportModel = new AccountExportModel { Level = Stats.Level, Type = UserSettings.AuthType.ToString(), Username = UserSettings.PtcUsername, Password = UserSettings.PtcPassword, Pokedex = Pokedex.Select(x => new PokedexEntryExportModel(x)).ToList(), Pokemon = Pokemon.Select(x => new PokemonDataExportModel(x, CalculateIVPerfection(x).Data)).ToList(), Items = Items.Select(x => new ItemDataExportModel(x)).ToList(), Eggs = Eggs.Select(x => new EggDataExportModel(x)).ToList() }; return(new MethodResult <AccountExportModel> { Data = exportModel, Success = true }); }
public int shakes(PocketMonster pokemon, double pokeballBonus) { int nbShake = 0; double a = ((3 * pokemon.HP - 2 * pokemon.CurrentHP) * Pokedex.getInfo(pokemon.PokedexID).CatchRate *pokeballBonus) / (3 * pokemon.HP); if (pokemon.Status == (int)Enum.status.Sleep || pokemon.Status == (int)Enum.status.Frozen) { a *= 2; } else if (pokemon.Status != 0) { a *= 1.5; } double shakeProbability = 1048560 / Math.Sqrt(Math.Sqrt(16711680 / a)); bool stillGoing = true; while (stillGoing) { int check = Utilities.RandomNumber(0, 65536); if (check >= shakeProbability) { stillGoing = false; } else { nbShake++; } if (nbShake == 4) { stillGoing = false; } } //If the nb < 3, then the pokemon has been catched ! return(nbShake); }
private void BtnChange_Click(object sender, RoutedEventArgs e)//entry aanpassen { int index = datagridPokedexEntries.SelectedIndex; pokedexEntry = datagridPokedexEntries.SelectedItem as Pokedex; pokedexEntry.PokemonName = txtNaam.Text; pokedexEntry.Types = null; pokedexEntry.Types1 = null; pokedexEntry.Type1 = cmbType1.SelectedIndex + 1; pokedexEntry.Type2 = cmbType2.SelectedIndex + 1; int ok = DatabaseOperations.UpdatePokedexEntry(pokedexEntry); if (ok > 0) { datagridPokedexEntries.ItemsSource = DatabaseOperations.PokedexEntry(); } else { MessageBox.Show("Pokemon is niet aangepast");//indien error } datagridPokedexEntries.SelectedIndex = index; }
private bool IsValidPokedex(Pokedex poke) { if ((poke.Id == null) || (poke.Name == null) || (poke.Type1 == null) || (poke.Attack == null) || (poke.Defence == null) || (poke.Stamina == null)) { ViewData["Msg"] = "Please enter all fields"; return(false); } if (poke.Type1.Equals(poke.Type2)) { ViewData["Msg"] = "Type2 cannot be the same as Type1"; return(false); } if ((poke.Id <= 0) || (poke.Attack <= 0) || (poke.Defence <= 0) || (poke.Stamina <= 0)) { ViewData["Msg"] = "Invalid stats"; return(false); } return(true); }
public Family(Pokedex pokedex, int id, int basic_male_id, int basic_female_id, int baby_male_id, int baby_female_id, int incense_id, byte gender_ratio) : base(pokedex) { m_basic_male_pair = Species.CreatePair(m_pokedex); m_basic_female_pair = Species.CreatePair(m_pokedex); m_baby_male_pair = Species.CreatePair(m_pokedex); m_baby_female_pair = Species.CreatePair(m_pokedex); m_incense_pair = Item.CreatePair(m_pokedex); m_lazy_pairs.Add(m_basic_male_pair); m_lazy_pairs.Add(m_basic_female_pair); m_lazy_pairs.Add(m_baby_male_pair); m_lazy_pairs.Add(m_baby_female_pair); m_lazy_pairs.Add(m_incense_pair); ID = id; m_basic_male_pair.Key = basic_male_id; m_basic_female_pair.Key = basic_female_id; m_baby_male_pair.Key = baby_male_id; m_baby_female_pair.Key = baby_female_id; m_incense_pair.Key = incense_id; GenderRatio = gender_ratio; }
private void btn_loadXML_Click(object sender, EventArgs e) { System.IO.StreamReader sr; using (FolderBrowserDialog fbd = new FolderBrowserDialog()) { if (fbd.ShowDialog() == DialogResult.OK) { folder = fbd.SelectedPath; } } try { sr = new System.IO.StreamReader(folder + "\\pokemon.xml"); pokedex = Pokedex.ObtenirDadesPokedex(sr, "pokedex", "pokemon"); pokedexKeys = Pokedex.GetPokedexNameNum(pokedex); /*foreach (KeyValuePair<string, int> reg in pokedexKeys) * { * comboBox1.Items.Add(reg.Key); * }*/ if (!loaded) { dgv_pkmnStats.BorderStyle = System.Windows.Forms.BorderStyle.None; dgv_pkmnStats.Columns.Add("stat", "stat"); dgv_pkmnStats.Columns.Add("value", "value"); dgv_evos.Columns.Add("pokemon", "id"); loaded = true; } } catch (System.IO.FileNotFoundException excpt) { } }
public void AllCacheIsCleared() { // assemble ResourceCacheManager sut = new ResourceCacheManager(); Berry berry = new Berry { Name = "cheri", Id = 1 }; Pokedex pokedex = new Pokedex { Name = "dex", Id = 1 }; sut.Store(berry); sut.Store(pokedex); // act sut.ClearAll(); // assert Berry retrievedBerry = sut.Get <Berry>(1); Pokedex retrievedPokedex = sut.Get <Pokedex>(1); Assert.Null(retrievedBerry); Assert.Null(retrievedPokedex); }
public void CacheIsClearedForSpecificType() { // assemble ResourceCacheManager sut = new ResourceCacheManager(); Berry berry = new Berry { Name = "cheri", Id = 1 }; Pokedex pokedex = new Pokedex { Name = "cheri", Id = 1 }; sut.Store(berry); sut.Store(pokedex); // act sut.Clear <Berry>(); // assert Berry retrievedBerry = sut.Get <Berry>(berry.Id); Pokedex retrievedPokedex = sut.Get <Pokedex>(pokedex.Id); Assert.Null(retrievedBerry); Assert.NotNull(retrievedPokedex); }
public FormStats(Pokedex pokedex, IDataReader reader) : this(pokedex, Convert.ToInt32(reader["form_id"]), (Generations)Convert.ToInt32(reader["MinGeneration"]), Convert.ToInt32(reader["Type1"]), Convert.ToInt32(reader["Type2"]), new IntStatValues( Convert.ToInt32(reader["BaseHP"]), Convert.ToInt32(reader["BaseAttack"]), Convert.ToInt32(reader["BaseDefense"]), Convert.ToInt32(reader["BaseSpeed"]), Convert.ToInt32(reader["BaseSpAttack"]), Convert.ToInt32(reader["BaseSpDefense"]) ), new ByteStatValues( Convert.ToByte(reader["RewardHP"]), Convert.ToByte(reader["RewardAttack"]), Convert.ToByte(reader["RewardDefense"]), Convert.ToByte(reader["RewardSpeed"]), Convert.ToByte(reader["RewardSpAttack"]), Convert.ToByte(reader["RewardSpDefense"]) )) { }
public abstract List<Ribbon> PokedexGetAllRibbons(Pokedex.Pokedex pokedex);
public MainPage() { InitializeComponent(); _pokedex = new Pokedex(); }
public static LazyKeyValuePair<int, Ability> CreatePair(Pokedex pokedex) { return new LazyKeyValuePair<int, Ability>( k => k == 0 ? null : (pokedex == null ? null : pokedex.Abilities(k)), v => v == null ? 0 : v.Value); }
public abstract List<Pokedex.Type> PokedexGetAllTypes(Pokedex.Pokedex pokedex);
public abstract List<Region> PokedexGetAllRegions(Pokedex.Pokedex pokedex);
public void UpdateInventory() { LogCaller(new LoggerEventArgs("Updating inventory.", LoggerTypes.Debug)); try { var inventoryItems = _client?.ClientSession?.Player?.Inventory?.InventoryItems; if (inventoryItems == null) { return; } Items.Clear(); Pokemon.Clear(); Pokedex.Clear(); PokemonCandy.Clear(); Incubators.Clear(); Eggs.Clear(); foreach (var inventoryItem in inventoryItems) { if (inventoryItem.InventoryItemData?.PlayerStats != null) { Stats = inventoryItem.InventoryItemData.PlayerStats; } if (inventoryItem.InventoryItemData?.Item != null) { Items.Add(inventoryItem.InventoryItemData.Item); } if (inventoryItem.InventoryItemData?.PokedexEntry != null) { Pokedex.Add(inventoryItem.InventoryItemData.PokedexEntry); } if (inventoryItem.InventoryItemData?.Candy != null) { PokemonCandy.Add(inventoryItem.InventoryItemData.Candy); } if (inventoryItem.InventoryItemData?.EggIncubators != null) { foreach (var eggIncubator in inventoryItem.InventoryItemData.EggIncubators.EggIncubator) { if (eggIncubator != null) { Incubators.Add(eggIncubator); } } } if (inventoryItem.InventoryItemData?.PokemonData != null) { if (inventoryItem.InventoryItemData.PokemonData.IsEgg) { Eggs.Add(inventoryItem.InventoryItemData.PokemonData); } else { Pokemon.Add(inventoryItem.InventoryItemData.PokemonData); } } } } catch (Exception ex1) { AccountState = Enums.AccountState.TemporalBan; LogCaller(new LoggerEventArgs(String.Format("Failed updating inventory."), LoggerTypes.Debug, ex1)); Stop(); } }
private static async Task <Embed> QueryPokedex(int id) { var pokemon = await Pokedex.GetPokemonById(id); var form = await Pokedex.GetPokemonForm(id); string name = pokemon.Name.Capitalize(); double height = (double)pokemon.Height / 10; double weight = (double)pokemon.Weight / 10; IList <string> abilities = new List <string>(); foreach (var ability in pokemon.Abilities.OrderBy(a => a.Slot)) { string appendix = ability.Hidden ? " (Hidden)" : ""; abilities.Add($"#{ability.Slot}: {ability.Actual.Name.Capitalize()}{appendix}"); } IList <string> items = pokemon.Items.Select(item => item.Name).ToList(); IList <string> types = pokemon.Types.OrderBy(t => t.Slot) .Select(type => $"#{type.Slot}: {type.ToEmoji()} {type.Name}").ToList(); string joinAbilities = string.Join("\n", abilities); joinAbilities = string.IsNullOrWhiteSpace(joinAbilities) ? "/" : joinAbilities; string joinItems = string.Join("\n", items); joinItems = string.IsNullOrWhiteSpace(joinItems) ? "/" : joinItems; string joinTypes = string.Join("\n", types); joinTypes = string.IsNullOrWhiteSpace(joinTypes) ? "/" : joinTypes; var builder = new EmbedBuilder { Author = new EmbedAuthorBuilder { Name = "National Pokédex", IconUrl = Information.PokedexUrl }, Footer = new EmbedFooterBuilder { Text = "Powered by pokeapi.co", IconUrl = "http://pokeapi.co" }, Color = new Color(255, 64, 64), ThumbnailUrl = form.Sprites.Front }; builder.AddInlineField("Name", $"[{name}](https://bulbapedia.bulbagarden.net/wiki/{name})"); builder.AddInlineField("ID", $"#{pokemon.Id}"); builder.AddInlineField("Height", $"{height} m"); builder.AddInlineField("Weight", $"{weight} kg"); builder.AddInlineField("Base Exp.", pokemon.BaseExperience); builder.AddInlineField("Abilities", joinAbilities); builder.AddInlineField("Default", pokemon.Default ? "Yes" : "No"); builder.AddInlineField("Order", pokemon.Order); builder.AddInlineField("Held Items", joinItems); builder.AddInlineField("Type", joinTypes); return(builder.Build()); }
private void OnEnable() { TextAsset file = Resources.Load("Pokedex") as TextAsset; _pokedex = (!string.IsNullOrEmpty(file.text)) ? JsonUtility.FromJson <Pokedex>(file.text) : new Pokedex(); }
public static Story CreateIntroStory(Client client) { Story story = new Story(); StoryBuilderSegment segment = new StoryBuilderSegment(); Pokemon eevee = Pokedex.FindByName("Eevee"); string map1ID = Main.Crossroads; StoryBuilder.AppendMapVisibilityAction(segment, false); StoryBuilder.AppendPlayerPadlockAction(segment, "Lock"); StoryBuilder.AppendWarpAction(segment, map1ID, 25, 25); StoryBuilder.AppendPlayMusicAction(segment, "PMD2) Strange Happenings.mp3", true, true); StoryBuilder.AppendSaySegment(segment, "You step into the light of the crystal...", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "You feel its energy going through your body...", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "Dizzy... are you moving?", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "You feel a cool breeze... maybe, just maybe...", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "You slowly open your eyes...", -1, 0, 0); StoryBuilder.AppendPauseAction(segment, 1000); StoryBuilder.AppendPlayMusicAction(segment, "%mapmusic%", true, true); StoryBuilder.AppendSaySegment(segment, "Hey! You!", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "Are you okay?", -1, 0, 0); StoryBuilder.AppendCreateFNPCAction(segment, "0", map1ID, 25, 23, eevee.ID); StoryBuilder.AppendChangeFNPCDirAction(segment, "0", Server.Enums.Direction.Down); StoryBuilder.AppendMapVisibilityAction(segment, true); StoryBuilder.AppendSaySegment(segment, "Oh, good! You're awake!", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "You've been laying there for a while now. Are you okay? Are you hurt?", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "(An eevee is talking to me...)", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "Oh, well. The important thing is that you are awake now!", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "So, where are you from? I haven't seen you in these parts before.", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "(Hmm... Where am I from? I don't remember a thing)", -1, 0, 0); StoryBuilder.AppendPauseAction(segment, 1000); StoryBuilder.AppendSaySegment(segment, "Oh, you don't remember? Strange. Anyway, you're probably wondering who I am...", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "...I am the great Eevocious! Master of evolutions and battle!", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "(Eevocious, huh... what an odd name. But, alright. Eevocious it is.)", -1, 0, 0); StoryBuilder.AppendPauseAction(segment, 2000); StoryBuilder.AppendSaySegment(segment, "...I bet I fooled you, didn't I.", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "And you actually thought I was Eevocious!", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "Yeah, I'm sorry. It's just hard to resist. A new Pokemon just appearing out of no where gives me a chance to be whomever I want to be!", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "(Very funny)", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "Anyway, my real name is Eevee. I'm an explorer. Or, I want to become an explorer. See...", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "I can't become a true explorer until I prove that I am capable of handling the toughest situations. That's why I'm training to be able to get through Tiny Grotto!", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "(Tiny Grotto?)", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "You're probably wondering what Tiny Grotto even is! I'll explain.", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "It's a dungeon. It's not the hardest dungeon, but it's good practice. Yup, so I'm going to Tiny Grotto!", eevee.ID, 0, 0); StoryBuilder.AppendSaySegment(segment, "(Oh look, Eevee is leaving me.)", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "Bye~!", eevee.ID, 0, 0); StoryBuilder.AppendMoveFNPCAction(segment, "0", 1, 24, Server.Enums.Speed.Walking, true); StoryBuilder.AppendDeleteFNPCAction(segment, "0"); StoryBuilder.AppendSaySegment(segment, "(Now what do I do next? I know I can't go to Tiny Grotto... I don't even know how to battle!)", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "(Maybe I'll find out more if I continue going North (^))", -1, 0, 0); StoryBuilder.AppendPlayerPadlockAction(segment, "Unlock"); if (client.Player.Veteran) { StoryBuilder.AppendPlayerPadlockAction(segment, "Lock"); StoryBuilder.AppendPauseAction(segment, 2000); StoryBuilder.AppendSaySegment(segment, "PMU Staff: You weren't expecting all this, now were you?", -1, 0, 0); StoryBuilder.AppendSaySegment(segment, "PMU Staff: Have fun exploring!", -1, 0, 0); StoryBuilder.AppendPlayerPadlockAction(segment, "Unlock"); } #region old //StoryBuilder.AppendMapVisibilityAction(segment, false); //StoryBuilder.AppendSaySegment(segment, "Hey! You!", -1, 0, 0); //StoryBuilder.AppendSaySegment(segment, "Are you okay?", -1, 0, 0); //StoryBuilder.AppendCreateFNPCAction(segment, "0", map1ID, 10, 6, eevee.Sprite); //StoryBuilder.AppendMapVisibilityAction(segment, true); //StoryBuilder.AppendSaySegment(segment, "Oh, good! You're awake!", eevee.Mugshot, 0, 0); //StoryBuilder.AppendSaySegment(segment, "You've been laying there for a while now. Are you okay? Are you hurt?", eevee.Mugshot, 0, 0); //StoryBuilder.AppendSaySegment(segment, "(An eevee is talking to me...)", -1, 0, 0); //StoryBuilder.AppendSaySegment(segment, "You're probably wondering what Tiny Woods even is! I'll explain.", eevee.Mugshot , 0, 0); //StoryBuilder.AppendSaySegment(segment, "It's a dungeon. It's not the hardest dungeon, but it's good practice. Yup, so I'm going to Tiny Woods!", eevee.Mugshot, 0, 0); //StoryBuilder.AppendSaySegment(segment, "(Oh look, Eevee is leaving me. Fun.", -1, 0, 0); //StoryBuilder.AppendSaySegment(segment, "Bye~!", eevee.Mugshot , 0, 0); //StoryBuilder.AppendMoveFNPCAction(segment, "0", 0, 7, Server.Enums.Speed.Walking, true); //StoryBuilder.AppendDeleteFNPCAction(segment, "0"); //StoryBuilder.AppendSaySegment(segment, "(Now what do I do next? I know I can't go to Tiny Woods... I don't even know how to battle!", -1, 0, 0); //StoryBuilder.AppendSaySegment(segment, "(Maybe I'll find out more if I continue going North (^))", -1, 0, 0); //StoryBuilder.AppendPlayerPadlockAction(segment, "Unlock"); #endregion segment.AppendToStory(story); return(story); }
static void Main(string[] args) { if (args.Length == 0) { Console.WriteLine("Usage: towerRestorer4 <path>"); Console.WriteLine("Attempts to insert files in <path>"); Console.WriteLine("into the database in app configuration."); Console.WriteLine("Only inserts files whose names match the naming pattern:"); Console.WriteLine("g*_pid*_rank*_room*"); Console.WriteLine("Rank and room number are taken from the filename."); return; } Database db = Database.Instance; String[] filenames = Directory.GetFiles(args[0]); int successCount = 0; int failureCount = 0; int opponentSuccessCount = 0; int opponentFailureCount = 0; int leaderSuccessCount = 0; int leaderFailureCount = 0; Pokedex pokedex = new Pokedex(db, false); foreach (String s in filenames) { String filename = s; int slashIndex = filename.LastIndexOf(Path.DirectorySeparatorChar); if (slashIndex >= 0) { filename = filename.Substring(slashIndex + 1); } int dotIndex = filename.LastIndexOf('.'); if (dotIndex >= 0) { filename = filename.Substring(0, dotIndex); } String[] split = filename.Split('_'); byte rank, room; if (split.Length != 4 || (split[0] != "g4" && split[0] != "g5") || split[2].Substring(0, 4) != "rank" || !Byte.TryParse(split[2].Substring(4), out rank) || split[3].Substring(0, 4) != "room" || !Byte.TryParse(split[3].Substring(4), out room) ) { Console.WriteLine("{0}: Filename pattern does not match, skipped.", filename); failureCount++; continue; } int gen = Convert.ToInt32(split[0].Substring(1)); rank--; room--; switch (gen) { case 4: { FileStream fs = File.OpenRead(s); if (fs.Length != 0xa38) { Console.WriteLine("{0}: file size is wrong, skipped.", filename); failureCount++; continue; } byte[] data = new byte[0xa38]; fs.ReadBlock(data, 0, 0xa38); fs.Close(); // battletower/download.asp response: 2616 bytes // 00-63b: BattleTowerRecord objects x7 // 63c-a37: BattleTowerTrainerProfile objects x30 for (int x = 0; x < 7; x++) { try { BattleTowerRecord4 record = new BattleTowerRecord4(pokedex, data, 0xe4 * x); record.PID = 0; record.Rank = rank; record.RoomNum = room; record.BattlesWon = 7; db.BattleTowerUpdateRecord4(record); opponentSuccessCount++; } catch (Exception ex) { Console.WriteLine(ex.Message); opponentFailureCount++; } } for (int x = 0; x < 30; x++) { try { BattleTowerProfile4 profile = new BattleTowerProfile4(data, 0x63c + 0x22 * x); BattleTowerRecord4 record = new BattleTowerRecord4(pokedex); record.Profile = profile; record.PID = 0; record.Rank = rank; record.RoomNum = room; db.BattleTowerAddLeader4(record); leaderSuccessCount++; } catch (Exception ex) { Console.WriteLine(ex.Message); leaderFailureCount++; } } } break; case 5: { FileStream fs = File.OpenRead(s); if (fs.Length != 0xab4) { Console.WriteLine("{0}: file size is wrong, skipped.", filename); failureCount++; continue; } byte[] data = new byte[0xab4]; fs.ReadBlock(data, 0, 0xab4); fs.Close(); //web/battletower/download.asp response: 2700 bytes //00-68f: BattleSubwayRecord objects x7 //690-a8b: BattleSubwayTrainerProfile objects x30 for (int x = 0; x < 7; x++) { try { BattleSubwayRecord5 record = new BattleSubwayRecord5(pokedex, data, 0xf0 * x); record.PID = 0; record.Rank = rank; record.RoomNum = room; record.BattlesWon = 7; record.Unknown4 = new byte[5]; db.BattleSubwayUpdateRecord5(record); opponentSuccessCount++; } catch (Exception ex) { Console.WriteLine(ex.Message); opponentFailureCount++; } } for (int x = 0; x < 30; x++) { try { BattleSubwayProfile5 profile = new BattleSubwayProfile5(data, 0x690 + 0x22 * x); BattleSubwayRecord5 record = new BattleSubwayRecord5(pokedex); record.Profile = profile; record.PID = 0; record.Rank = rank; record.RoomNum = room; db.BattleSubwayAddLeader5(record); leaderSuccessCount++; } catch (Exception ex) { Console.WriteLine(ex.Message); leaderFailureCount++; } } } break; } Console.WriteLine("{0} complete", s); } Console.WriteLine("Added {0} files, {1} opponents, {2} leaders.", successCount, opponentSuccessCount, leaderSuccessCount); Console.WriteLine("Failed: {0} files, {1} opponents, {2} leaders.", failureCount, opponentFailureCount, leaderFailureCount); Console.ReadKey(); }
internal PokedexRecordBase(Pokedex pokedex) { m_pokedex = pokedex; m_lazy_pairs = new List<ILazyKeyValuePair<int, object>>(); }
static void Main(string[] args) { Console.WriteLine("Welcome to Assignment 5 - Pokemon Edition"); PokemonReader reader = new PokemonReader(); Pokedex pokedex = reader.LoadPokedex("pokemon151.xml"); // List out all the pokemons loaded foreach (Pokemon pokemon in pokedex.Pokemons) { //Console.WriteLine(pokemon.Name); } // TODO: Add a pokemon bag with 2 bulbsaur, 1 charizard, 1 mew and 1 dragonite // and save it out and load it back and list it out. PokemonBag pokemonbag = new PokemonBag(); pokemonbag.Pokemons.Add(1); pokemonbag.Pokemons.Add(1); pokemonbag.Pokemons.Add(6); pokemonbag.Pokemons.Add(151); pokemonbag.Pokemons.Add(149); Pokedex newPokedex = new Pokedex(); using (PokemonUtil pokemonUtil = new PokemonUtil("PokemonBag")) { pokemonUtil.Init(); pokemonUtil.AddPokemonsToProcess(ref pokemonbag, ref pokedex); newPokedex.Pokemons.AddRange(pokemonUtil.PokemonsToProcess); pokemonUtil.Write(); pokemonUtil.Print(); pokemonUtil.Clear(); } PokemonWriter pokemonWriter = new PokemonWriter(); pokemonWriter.SavePokemons("PokemonBag.xml", ref newPokedex); Pokedex dex = reader.LoadPokedex("PokemonBag.xml"); // TODO: load the pokemon151 xml XElement pokemon151XML = XElement.Load(@"pokemon151.xml"); // Console.WriteLine(pokemon151XML); // TODO: Add item reader and print out all the items Item itemdata = new Item(); List <Item> itemlist = new List <Item>(); XmlTextReader readerItem = new XmlTextReader("itemData.xml"); while (readerItem.Read()) { if (readerItem.NodeType == XmlNodeType.Element && readerItem.Name == "Name") { string name = readerItem.ReadElementContentAsString(); itemdata.Name = name; // Console.WriteLine("Name: " + itemdata.Name); } if (readerItem.NodeType == XmlNodeType.Element && readerItem.Name == "UnlockRequirement") { string UnlockRequirement = readerItem.ReadElementContentAsString(); itemdata.UnlockRequirement = Int32.Parse(UnlockRequirement); // Console.WriteLine("UnlockRequirement: " + itemdata.UnlockRequirement); } if (readerItem.NodeType == XmlNodeType.Element && readerItem.Name == "Description") { string Description = readerItem.ReadElementContentAsString(); itemdata.Description = Description; // Console.WriteLine("Description: " + itemdata.Description); } if (readerItem.NodeType == XmlNodeType.Element && readerItem.Name == "Effect") { string Effect = readerItem.ReadElementContentAsString(); itemdata.Effect = Effect; //Console.WriteLine("Effect: " + itemdata.Effect); itemlist.Add(itemdata); itemdata = new Item(); } } foreach (Item i in itemlist) { i.Print(); } // TODO: hook up item data to display with the inventory Inventory source = new Inventory() { ItemToQuantity = new Dictionary <object, object> { { "Poke ball", 10 }, { "Potion", 10 } } }; // TODO: move this into a inventory with a serialize and deserialize function. source.Serialize(source, "inventory.xml"); source.Deserialize("inventory.xml"); Console.ReadKey(); }
static void Main(string[] args) { string path; char slash = Path.DirectorySeparatorChar; ConnectionStringSettings css; if (args.Length < 1) { path = "." + slash + "pkmn-sm"; } else { path = args[0]; } if (path.Contains('?')) { Console.WriteLine("h e l p"); return; } while (path.Length > 0 && (path[path.Length - 1] == '/' || path[path.Length - 1] == '\\')) { path = path.Substring(0, path.Length - 1); } path = path + slash; if (args.Length < 3) { css = ConfigurationManager.ConnectionStrings["pkmnFoundationsConnectionString"]; } else { css = new ConnectionStringSettings("", args[1], args[2]); } Database db = Database.CreateInstance(css); Pokedex pokedex = new Pokedex(db, false); foreach (var pair in pokedex.Forms) { Form form = pair.Value; Species species = form.Species; StringBuilder speciesNameBuilder = new StringBuilder(species.Name["EN"].ToLowerInvariant()); speciesNameBuilder.Replace("\'", ""); speciesNameBuilder.Replace(".", ""); speciesNameBuilder.Replace("♀", "-f"); speciesNameBuilder.Replace("♂", "-m"); speciesNameBuilder.Replace('é', 'e'); speciesNameBuilder.Replace(' ', '-'); string speciesName = speciesNameBuilder.ToString(); // fixme: This is incorrect for Vivillon, Pumpkaboo, and Gourgeist, because their suffixless form is not form 0. string oldFilename = (form.Value == 0) ? String.Format("{0}.png", speciesName) : String.Format("{0}-{1}.png", speciesName, form.Suffix); string newFilename = (form.Suffix.Trim().Length == 0) ? String.Format("{0}.png", species.NationalDex) : String.Format("{0}-{1}.png", species.NationalDex, form.Suffix); try { File.Move(path + oldFilename, path + newFilename); Console.Write("{0} {1}", oldFilename, newFilename); } catch (Exception ex) { Console.Write(ex.Message); } if (form.Value == 0 && form.Suffix.Trim().Length != 0) { try { string speciesFilename = String.Format("{0}.png", species.NationalDex); File.Copy(path + newFilename, path + speciesFilename); Console.Write(" {0}", speciesFilename); } catch (Exception ex) { Console.WriteLine(); Console.Write(ex.Message); } } Console.WriteLine(); } Console.ReadKey(); }
public PokemonExperiment(Pokedex newPD) { pD = newPD; }
/// <summary> /// Ucitavamo save iz zadane putanje /// </summary> /// <param name="path">Putanja do save filea</param> private void LoadSaveFile(string path) { this.player = new Player(); this.playerBag = new PlayerBag(pokemonVersion); this.pokemonStorage = new PokemonStorage(); this.pokedex = new Pokedex(); this.pokemonSave = new PokemonSave(path); isReady = false; uxNationalDex.Checked = false; //File je ucitan i spreman za obradu if (pokemonSave.isLoaded) { using (MemoryStream tempSave = new MemoryStream(pokemonSave.saveBank)) { using (BinaryReader br = new BinaryReader(tempSave)) { // Za svaki slucaj postavit na pocetak br.BaseStream.Seek(0, SeekOrigin.Begin); #region Player //Name player.Name = br.ReadBytes(7); //Gender br.BaseStream.Seek(PokemonConstants.playerGenderOffset, SeekOrigin.Begin); player.Gender = br.ReadByte(); //TrainerID br.BaseStream.Seek(PokemonConstants.playerTrainerIDOffset, SeekOrigin.Begin); player.TrainerID = br.ReadUInt32(); //EncryptionKey if (pokemonVersion == PokemonVersion.Emerald) { br.BaseStream.Seek(PokemonConstants.playerEncryptionKeyOffset, SeekOrigin.Begin); player.EncryptionKey = br.ReadUInt32(); } else if (pokemonVersion == PokemonVersion.FireRedAndLeafGreen) { br.BaseStream.Seek(PokemonConstants.playerEncryptionKeyOffsetFireLeaf, SeekOrigin.Begin); player.EncryptionKey = br.ReadUInt32(); } else //Ruby, Sapphire { player.EncryptionKey = 0; } //Money and Coins if (pokemonVersion == PokemonVersion.FireRedAndLeafGreen) { //Money br.BaseStream.Seek(PokemonConstants.playerMoneyOffsetFireLeaf, SeekOrigin.Begin); player.Money = br.ReadUInt32(); //Coins br.BaseStream.Seek(PokemonConstants.playerCoinsOffsetFireLeaf, SeekOrigin.Begin); player.Coins = br.ReadUInt16(); } else //Emerald , Ruby, Sapphire { //Money br.BaseStream.Seek(PokemonConstants.playerMoneyOffset, SeekOrigin.Begin); player.Money = br.ReadUInt32(); //Coins br.BaseStream.Seek(PokemonConstants.playerCoinsOffset, SeekOrigin.Begin); player.Coins = br.ReadUInt16(); } #endregion #region Items - Bag //Bag if (pokemonVersion == PokemonVersion.FireRedAndLeafGreen) { br.BaseStream.Seek(PokemonConstants.bagOffsetFireLeaf, SeekOrigin.Begin); playerBag.Load(br.ReadBytes(PokemonConstants.bagSizeinBytes)); } else if (pokemonVersion == PokemonVersion.RubyAndSapphire) { br.BaseStream.Seek(PokemonConstants.bagOffset, SeekOrigin.Begin); playerBag.Load(br.ReadBytes(PokemonConstants.bagSizeinBytesRubySapphire)); } else//Emerald { br.BaseStream.Seek(PokemonConstants.bagOffset, SeekOrigin.Begin); playerBag.Load(br.ReadBytes(PokemonConstants.bagSizeinBytes)); } #endregion //Pokemon Storage br.BaseStream.Seek(PokemonConstants.pokemonStorageOffset, SeekOrigin.Begin); pokemonStorage.Load(br.ReadBytes(PokemonConstants.pokemonStorageSize)); #region Pokedex //Own br.BaseStream.Seek(PokemonConstants.pokedexOwnOffset, SeekOrigin.Begin); pokedex.LoadOwn(br.ReadBytes(49)); //Seen br.BaseStream.Seek(PokemonConstants.pokedexSeenOffset, SeekOrigin.Begin); pokedex.LoadSeen(br.ReadBytes(49)); #endregion } }//end memory stream //Postavljamo enkripcijski kljuc u Items Item.EncryptionKey = player.EncryptionKeySmall; isReady = true; }//end if }
public override void OnActivateMap(IMap map) { var minionXs = new int[] { 11, 13 }; var mapType = this.typeMappings.Where(x => x.Value == ((InstancedMap)map).MapBase).First().Key; var availableMinions = minionNpcs.Where(x => Pokedex.GetPokemon(NpcManager.Npcs[x].Species).Forms[0].Type1 == mapType || Pokedex.GetPokemon(NpcManager.Npcs[x].Species).Forms[0].Type2 == mapType).ToList(); if (availableMinions.Count == 0) { availableMinions = minionNpcs; } var availableBosses = bossNpcs.Where(x => Pokedex.GetPokemon(NpcManager.Npcs[x].Species).Forms[0].Type1 == mapType || Pokedex.GetPokemon(NpcManager.Npcs[x].Species).Forms[0].Type2 == mapType).ToList(); if (availableBosses.Count == 0) { availableBosses = bossNpcs; } for (var i = 0; i < MinionCount; i++) { var minionSlot = Server.Math.Rand(0, availableMinions.Count); var minion = availableMinions[minionSlot]; var npc = new MapNpcPreset(); npc.SpawnX = minionXs[i]; npc.SpawnY = 6; npc.NpcNum = minion; npc.MaxLevel = 30; npc.MinLevel = 30; map.SpawnNpc(npc); } var bossSlot = Server.Math.Rand(0, availableBosses.Count); var boss = availableMinions[bossSlot]; var bossNpc = new MapNpcPreset(); bossNpc.SpawnX = 12; bossNpc.SpawnY = 6; bossNpc.NpcNum = boss; bossNpc.MinLevel = 35; bossNpc.MaxLevel = 35; map.SpawnNpc(bossNpc); }
public static LazyKeyValuePair<int, Move> CreatePair(Pokedex pokedex) { return new LazyKeyValuePair<int, Move>( k => k == 0 ? null : (pokedex == null ? null : pokedex.Moves(k)), v => v == null ? 0 : v.ID); }
public PokemonPartyBase(Pokedex.Pokedex pokedex) : base(pokedex) { Initialize(); }
public async Task <MethodResult> SnipeAllNearyPokemon() { MethodResult <List <NearbyPokemon> > pokeSniperResult = RequestPokeSniperRares(); if (!pokeSniperResult.Success) { return(new MethodResult { Message = pokeSniperResult.Message }); } if (Tracker.PokemonCaught >= UserSettings.CatchPokemonDayLimit) { LogCaller(new LoggerEventArgs("Catch pokemon limit actived", LoggerTypes.Info)); return(new MethodResult { Message = "Limit actived" }); } List <NearbyPokemon> pokemonToSnipe = pokeSniperResult.Data.Where(x => x.EncounterId != _lastPokeSniperId && UserSettings.CatchSettings.FirstOrDefault(p => p.Id == x.PokemonId).Snipe&& x.DistanceInMeters < UserSettings.MaxTravelDistance && !LastedEncountersIds.Contains(x.EncounterId)).OrderBy(x => x.DistanceInMeters).ToList(); if (UserSettings.SnipeAllPokemonsNoInPokedex) { LogCaller(new LoggerEventArgs("Search pokemons no into pokedex ...", LoggerTypes.Info)); var ids = Pokedex.Select(x => x.PokemonId); pokemonToSnipe = pokeSniperResult.Data.Where(x => x.EncounterId != _lastPokeSniperId && !ids.Contains(x.PokemonId) && x.DistanceInMeters < UserSettings.MaxTravelDistance && !LastedEncountersIds.Contains(x.EncounterId)).OrderBy(x => x.DistanceInMeters).ToList(); if (pokemonToSnipe.Count > 0) { LogCaller(new LoggerEventArgs("Found pokemons no into pokedex, go to sniping ...", LoggerTypes.Snipe)); } } if (pokemonToSnipe.Count == 0) { LogCaller(new LoggerEventArgs("No pokemon to snipe within catch settings", LoggerTypes.Info)); return(new MethodResult { Message = "No catchable pokemon found" }); } LogCaller(new LoggerEventArgs(String.Format("Sniping {0} pokemon", pokemonToSnipe.Count), LoggerTypes.Snipe)); await Task.Delay(CalculateDelay(UserSettings.GeneralDelay, UserSettings.GeneralDelayRandom)); //Long running, so can't let this continue while (pokemonToSnipe.Any() && IsRunning && !AlreadySnipped) { AlreadySnipped = false; NearbyPokemon nearbyPokemon = pokemonToSnipe.First(); pokemonToSnipe.Remove(nearbyPokemon); var forts = _client.ClientSession.Map.Cells.SelectMany(x => x.Forts); var fortNearby = forts.Where(x => x.Id == nearbyPokemon.FortId).FirstOrDefault(); if (fortNearby == null) { continue; } _lastPokeSniperId = nearbyPokemon.EncounterId; GeoCoordinate coords = new GeoCoordinate { Latitude = fortNearby.Latitude, Longitude = fortNearby.Longitude }; await CaptureSnipePokemon(coords.Latitude, coords.Longitude, nearbyPokemon.PokemonId); await Task.Delay(CalculateDelay(UserSettings.GeneralDelay, UserSettings.GeneralDelayRandom)); pokemonToSnipe = pokemonToSnipe.Where(x => UserSettings.CatchSettings.FirstOrDefault(p => p.Id == x.PokemonId).Snipe&& fortNearby.CooldownCompleteTimestampMs >= DateTime.Now.AddSeconds(30).ToUnixTime() && !LastedEncountersIds.Contains(x.EncounterId)).OrderBy(x => x.DistanceInMeters).ToList(); if (UserSettings.SnipeAllPokemonsNoInPokedex) { LogCaller(new LoggerEventArgs("Search pokemons no into pokedex ...", LoggerTypes.Info)); var ids = Pokedex.Select(x => x.PokemonId); pokemonToSnipe = pokemonToSnipe.Where(x => x.EncounterId != _lastPokeSniperId && !ids.Contains(x.PokemonId)).OrderBy(x => x.DistanceInMeters).ToList(); if (pokemonToSnipe.Count > 0) { LogCaller(new LoggerEventArgs("Found pokemons no into pokedex, go to sniping ...", LoggerTypes.Snipe)); } } } AlreadySnipped = false; return(new MethodResult { Success = true }); }
public PokemonController(PokemonDatabase database, Pokedex pokedex, SecurityProvider securityProvider) { this.database = database; this.pokedex = pokedex; this.securityProvider = securityProvider; }
public PokemonEvaluator(Pokedex newPD) { pD = newPD; }
/// <summary> /// Load Inventory methodes. /// </summary> public void UpdateInventory(InventoryRefresh type) { if (!_client.LoggedIn) { return; } LogCaller(new LoggerEventArgs($"Updating inventory. Items to load: {type}", LoggerTypes.Debug)); try { foreach (var item in _client.ClientSession.Player.Inventory.InventoryItems) { AddRemoveOrUpdateItem(item); } switch (type) { case InventoryRefresh.All: Items.Clear(); Pokemon.Clear(); Pokedex.Clear(); PokemonCandy.Clear(); Incubators.Clear(); Eggs.Clear(); Stats = GetPlayerStats(); Items = GetItemsData().ToList(); Pokedex = GetPokedex().ToList(); PokemonCandy = GetCandies().ToList(); Incubators = GetIncubators().ToList(); Eggs = GetEggs().ToList(); Pokemon = GetPokemons().ToList(); break; case InventoryRefresh.Items: Items.Clear(); Items = GetItemsData().ToList(); break; case InventoryRefresh.Pokemon: Pokemon.Clear(); Pokemon = GetPokemons().ToList(); break; case InventoryRefresh.Pokedex: Pokedex.Clear(); Pokedex = GetPokedex().ToList(); break; case InventoryRefresh.PokemonCandy: PokemonCandy.Clear(); PokemonCandy = GetCandies().ToList(); break; case InventoryRefresh.Incubators: Incubators.Clear(); Incubators = GetIncubators().ToList(); break; case InventoryRefresh.Eggs: Eggs.Clear(); Eggs = GetEggs().ToList(); break; case InventoryRefresh.Stats: Stats = GetPlayerStats(); break; } } catch (Exception ex1) { LogCaller(new LoggerEventArgs(String.Format("Failed updating inventory."), LoggerTypes.Exception, ex1)); ++_failedInventoryReponses; } }
public NEATNetwork(Pokedex newPD) { pD = newPD; }
public MainModel() { Data = new Pokedex(); }
public abstract List<Species> PokedexGetAllSpecies(Pokedex.Pokedex pokedex);
public abstract List<Move> PokedexGetAllMoves(Pokedex.Pokedex pokedex);