2017-06-07 03:10:05 +00:00
|
|
|
|
namespace PKHeX.Core
|
|
|
|
|
{
|
2017-10-24 06:12:58 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Source the Move was learned from
|
|
|
|
|
/// </summary>
|
2017-06-07 03:10:05 +00:00
|
|
|
|
public enum MoveSource
|
|
|
|
|
{
|
|
|
|
|
Unknown,
|
|
|
|
|
None,
|
|
|
|
|
Relearn,
|
|
|
|
|
Initial,
|
|
|
|
|
LevelUp,
|
|
|
|
|
TMHM,
|
|
|
|
|
Tutor,
|
|
|
|
|
EggMove,
|
|
|
|
|
InheritLevelUp,
|
|
|
|
|
Special,
|
|
|
|
|
SpecialEgg,
|
|
|
|
|
ShedinjaEvo,
|
|
|
|
|
Sketch,
|
|
|
|
|
}
|
|
|
|
|
|
2017-10-24 06:12:58 +00:00
|
|
|
|
/// <summary>
|
2018-10-31 20:52:09 +00:00
|
|
|
|
/// Move specific <see cref="CheckResult"/> to contain in which Generation it was learned & source.
|
2017-10-24 06:12:58 +00:00
|
|
|
|
/// </summary>
|
2019-10-04 02:09:02 +00:00
|
|
|
|
public sealed class CheckMoveResult : CheckResult
|
2017-06-07 03:10:05 +00:00
|
|
|
|
{
|
|
|
|
|
public readonly MoveSource Source;
|
|
|
|
|
public readonly int Generation;
|
2018-07-02 04:34:17 +00:00
|
|
|
|
public bool Flag;
|
2017-06-07 03:10:05 +00:00
|
|
|
|
|
|
|
|
|
internal CheckMoveResult(MoveSource m, int g, CheckIdentifier i)
|
|
|
|
|
: base(i)
|
|
|
|
|
{
|
|
|
|
|
Source = m;
|
|
|
|
|
Generation = g;
|
|
|
|
|
}
|
2018-08-03 03:11:42 +00:00
|
|
|
|
|
2017-06-07 03:10:05 +00:00
|
|
|
|
internal CheckMoveResult(MoveSource m, int g, Severity s, string c, CheckIdentifier i)
|
|
|
|
|
: base(s, c, i)
|
|
|
|
|
{
|
|
|
|
|
Source = m;
|
|
|
|
|
Generation = g;
|
|
|
|
|
}
|
2018-08-03 03:11:42 +00:00
|
|
|
|
|
2017-06-07 03:10:05 +00:00
|
|
|
|
internal CheckMoveResult(CheckMoveResult Org, Severity s, string c, CheckIdentifier i)
|
|
|
|
|
: base(s, c, i)
|
|
|
|
|
{
|
|
|
|
|
Source = Org?.Source ?? MoveSource.Unknown;
|
|
|
|
|
Generation = Org?.Generation ?? 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|