private static IPokemon Update(IPokemon pokemon, IMove MoveSelected) { IPokemon updatedPokemon = pokemon; switch (pokemon.HeldItem) { case Item.ChoiceBand: if (MoveSelected.moveType == MoveType.Physical) { updatedPokemon = new ChoiceBand(pokemon); } break; case Item.ChoiceScarf: updatedPokemon = new ChoiceScarf(pokemon); break; case Item.Eviolite: updatedPokemon = new Eviolite(pokemon); break; } if (MoveSelected.type == updatedPokemon.Species.Type1 || MoveSelected.type == updatedPokemon.Species.Type2 && MoveSelected.type != Type.None) { updatedPokemon = new STAB(updatedPokemon); } return(updatedPokemon); }
private static IPokemon Update(IPokemon pokemon) { IPokemon updatedPokemon = pokemon; switch (pokemon.HeldItem) { case Item.ChoiceBand: updatedPokemon = new ChoiceBand(pokemon); break; case Item.ChoiceScarf: updatedPokemon = new ChoiceScarf(pokemon); break; case Item.Eviolite: updatedPokemon = new Eviolite(pokemon); break; } return(updatedPokemon); }