コード例 #1
0
        private PokemonSprite GeneratePokemon(User u, int level)
        {
            var list         = PokemonMain.Instance.pokemonClasses.Where(x => x.evolveLevel != -1).ToList();
            var speciesIndex = rng.Next(0, list.Count() - 1);

            var species = list[speciesIndex];

            PokemonSprite sprite = new PokemonSprite
            {
                SpeciesId      = species.number,
                HP             = species.baseStats["hp"],
                Level          = 1,
                NickName       = species.name,
                OwnerId        = (long)u.Id,
                XP             = 0,
                Attack         = species.baseStats["attack"],
                Defense        = species.baseStats["defense"],
                SpecialAttack  = species.baseStats["special-attack"],
                SpecialDefense = species.baseStats["special-defense"],
                Speed          = species.baseStats["speed"],
                MaxHP          = species.baseStats["hp"]
            };

            while (sprite.Level < level - 1)
            {
                sprite.LevelUp();
            }
            sprite.XP = sprite.XPRequired();
            sprite.LevelUp();
            return(sprite);
        }
コード例 #2
0
        public static int Reward(this PokemonSprite pkm, PokemonSprite defeated)
        {
            var reward = CalcXPReward(pkm, defeated);

            pkm.XP += reward;
            if (pkm.XP > pkm.XPRequired())
            {
                pkm.LevelUp();
            }
            return(reward);
        }
コード例 #3
0
        public static string PokemonString(this PokemonSprite pkm)
        {
            var species = pkm.GetSpecies();
            var str     = $"**Name**: {pkm.NickName}\n" +
                          $"**Spezies**: {species.name}\n{species.imageLink}\n" +
                          $"**HP**: {pkm.HP}\n" +
                          $"**Level**: {pkm.Level}\n" +
                          $"**XP**: {pkm.XP}/{pkm.XPRequired ()}\n" +
                          $"**Stats**\n" +
                          $"**Angriff:** {pkm.Attack}\n" +
                          $"**Verteidigung:** {pkm.Defense}\n" +
                          $"**Initiative:** {pkm.Speed}\n" +
                          "**Angriffe**:\n";

            foreach (var move in species.moves)
            {
                str += $"**{move.Key}** *{move.Value}*\n";
            }
            return(str);
        }