public void PrepareForBattle(List <Attacks> atks, int lvl, PokemonDefinition def) { _moves = new List <Attacks>(); foreach (var m in _moveNames) { var move = m.Replace('_', ' '); _moves.Add(atks.First(p => p.Name == move)); } _atk = CalculateStat(def.Attack, _AtkDV, _AtkEV, lvl, 1); _def = CalculateStat(def.Defense, _DefDV, _DefEV, lvl, 1); _spatk = CalculateStat(def.SpAtk, _SpAtkDV, _SpAtkEV, lvl, 1); _spdef = CalculateStat(def.SpDef, _SpDefDV, _SpDefEV, lvl, 1); _speed = CalculateStat(def.Speed, _SpeedDV, _SpeedEV, lvl, 1); _hP = CalculateHealth(def.HP, _HealthDV, _HealthEV, lvl); }
public UserPokemon(int lvl, PokemonDefinition def, List <Attacks> MoveDex, List <int> MoveIndeces) { _moveNames = new List <string>(); _moves = new List <Attacks>(); _Level = lvl; _HealthEV = 63; _AtkEV = 63; _DefEV = 63; _SpAtkEV = 63; _SpDefEV = 63; _SpeedEV = 63; _Level = 63; _name = def.PokemonName; _type1 = def.FirstType; _type2 = def.SecondType; _HealthDV = 13; _AtkDV = 13; _DefDV = 13; _SpAtkDV = 13; _SpDefDV = 13; _SpeedDV = 13; _atk = CalculateStat(def.Attack, _AtkDV, _AtkEV, lvl, 1); _def = CalculateStat(def.Defense, _DefDV, _DefEV, lvl, 1); _spatk = CalculateStat(def.SpAtk, _SpAtkDV, _SpAtkEV, lvl, 1); _spdef = CalculateStat(def.SpDef, _SpDefDV, _SpDefEV, lvl, 1); _speed = CalculateStat(def.Speed, _SpeedDV, _SpeedEV, lvl, 1); _hP = CalculateHealth(def.HP, _HealthDV, _HealthEV, lvl); foreach (var i in MoveIndeces) { _moveNames.Add(MoveDex[i].Name.Replace(' ', '_')); _moves.Add(MoveDex[i]); } }