public Move(Model.IMove baseMove, int pp, int maxPP) { if (pp < 0) { throw new Exception($"PP {pp} must be greater than 0"); } if (maxPP < 1) { throw new Exception($"Max PP {maxPP} must be greater than 1"); } if (pp > maxPP) { throw new Exception($"PP {pp} must be less than or equal to max pp {maxPP}"); } if (maxPP > baseMove.MaxPPLimit) { throw new Exception($"Max PP {maxPP} must be less than or equal to max possible pp {baseMove.MaxPPLimit}"); } Base = baseMove; PP = pp; MaxPP = maxPP; }
public Move(Model.IMove baseMove) : this(baseMove, baseMove.BasePP, baseMove.BasePP) { }