Ejemplo n.º 1
0
        private void Mega()
        {
            var m = false;

            foreach (var p in ActingPokemons)
            {
                p.BeforeMegaSpeed = p.Speed;
            }
            foreach (var p in ActingPokemons)
            {
                if (p.Action == PokemonAction.MoveAttached && p.SelectMega)
                {
                    if (p.Pokemon.Item == 0)
                    {
                        p.ShowLogPm(Ls.MegaPre384);
                    }
                    else
                    {
                        p.ShowLogPm("MegaPre", p.Pokemon.Item);
                    }
                    p.Pokemon.Mega = true;
                    p.ChangeForm(ITs.MegaForm(p.Pokemon.Item), true, "Mega");
                    p.CalculatePriority();
                    p.BeforeMegaSpeed = p.Speed; //mega速度刷新只对自己有效 雨天下mega轻快会变快,正常天气mega降雨不会使轻快队友变快
                    m = true;
                }
            }
            if (m)
            {
                ReportBuilder.AddHorizontalLine();
                ActingPokemons.Sort(MegaComparer);
            }
        }
Ejemplo n.º 2
0
 private void SortActingPokemons()
 {
     for (int i = 0; i < ActingPokemons.Count - 1; i++)
     {
         int j;
         j = Controller.GetRandomInt(i, ActingPokemons.Count - 1);
         PokemonProxy temp = ActingPokemons[i];
         ActingPokemons[i] = ActingPokemons[j];
         ActingPokemons[j] = temp;
     }
     foreach (var p in Board.Pokemons)
     {
         p.CalculatePriority();
     }
     ActingPokemons.Sort(Comparer);
 }