internal OnboardPokemon(Pokemon pokemon, int x) { this.pokemon = pokemon; conditions = new ConditionsDictionary(); Owner = pokemon.Owner; Type1 = pokemon.PokemonType.Type1; Type2 = pokemon.PokemonType.Type2; Gender = pokemon.Gender; Ability = pokemon.Ability; Base = new SixD(pokemon.Base); Iv = new SixD(pokemon.Iv); Ev = new SixD(pokemon.Ev); Static = new SixD(pokemon.Static); Lv5D = new SixD(); Moves = new Move[4] { pokemon.Moves[0], pokemon.Moves[1], pokemon.Moves[2], pokemon.Moves[3] }; Position = new Position(pokemon.TeamId,x); //幻影new完后覆盖属性 Outward = new PokemonOutward(this, pokemon.Hp); Outward.Name = pokemon.Name; Outward.Gender = Gender; Outward.ImageId = pokemon.PokemonType.Id; }
public Board(GameSettings settings) { mode = settings.Mode; weather = Data.Weather.Normal; terrain = settings.Terrain; pokemons = new OnboardPokemon[settings.TeamCount, settings.XBound]; Pokemons = new List<OnboardPokemon>(); BoardConditions = new ConditionsDictionary(); FieldConditions = new ConditionsDictionary[settings.TeamCount]; for (int i = 0; i < settings.TeamCount; i++) FieldConditions[i] = new ConditionsDictionary(); }