Further work on static side

This commit is contained in:
2024-07-20 16:12:39 +02:00
parent 3845f91601
commit 1b501dee7e
29 changed files with 670 additions and 155 deletions

View File

@@ -3,12 +3,12 @@ using PkmnLib.Static.Utils;
namespace PkmnLib.Static.Species;
/// <summary>
/// Data about how and into which Pokemon a species can evolve.
/// Data about how and into which Pokémon a species can evolve.
/// </summary>
public interface IEvolution
{
/// <summary>
/// The species that the Pokemon evolves into.
/// The species that the Pokémon evolves into.
/// </summary>
StringKey ToSpecies { get; }
}
@@ -19,7 +19,7 @@ public interface IEvolution
public record LevelEvolution : IEvolution
{
/// <summary>
/// The level at which the Pokemon evolves.
/// The level at which the Pokémon evolves.
/// </summary>
public required uint Level { get; init; }
@@ -28,17 +28,17 @@ public record LevelEvolution : IEvolution
}
/// <summary>
/// Evolves when a certain level is reached, and the Pokemon is a specific gender
/// Evolves when a certain level is reached, and the Pokémon is a specific gender
/// </summary>
public record LevelGenderEvolution : IEvolution
{
/// <summary>
/// The level at which the Pokemon evolves.
/// The level at which the Pokémon evolves.
/// </summary>
public required uint Level { get; init; }
/// <summary>
/// The gender the Pokemon needs to have to evolve
/// The gender the Pokémon needs to have to evolve
/// </summary>
public required Gender Gender { get; init; }
@@ -47,7 +47,7 @@ public record LevelGenderEvolution : IEvolution
}
/// <summary>
/// Evolves when an item is used on the Pokemon.
/// Evolves when an item is used on the Pokémon.
/// </summary>
public record ItemUseEvolution : IEvolution
{
@@ -61,7 +61,7 @@ public record ItemUseEvolution : IEvolution
}
/// <summary>
/// Evolves when an item is used on the Pokemon, and the Pokemon is a specific gender
/// Evolves when an item is used on the Pokémon, and the Pokémon is a specific gender
/// </summary>
public record ItemGenderEvolution : IEvolution
{
@@ -71,7 +71,7 @@ public record ItemGenderEvolution : IEvolution
public required StringKey Item { get; init; }
/// <summary>
/// The gender the Pokemon needs to have to evolve
/// The gender the Pokémon needs to have to evolve
/// </summary>
public Gender Gender { get; init; }
@@ -80,7 +80,7 @@ public record ItemGenderEvolution : IEvolution
}
/// <summary>
/// Evolves when an item is held by the Pokemon, and the Pokemon levels up.
/// Evolves when an item is held by the Pokémon, and the Pokémon levels up.
/// </summary>
public record HoldItemEvolution : IEvolution
{
@@ -94,7 +94,7 @@ public record HoldItemEvolution : IEvolution
}
/// <summary>
/// Evolves when an item is held by the Pokemon, and the Pokemon levels up, and it's day.
/// Evolves when an item is held by the Pokémon, and the Pokémon levels up, and it's day.
/// </summary>
public record DayHoldItemEvolution : IEvolution
{
@@ -103,12 +103,12 @@ public record DayHoldItemEvolution : IEvolution
/// </summary>
public required StringKey Item { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
/// <summary>
/// Evolves when an item is held by the Pokemon, and the Pokemon levels up, and it's night.
/// Evolves when an item is held by the Pokémon, and the Pokémon levels up, and it's night.
/// </summary>
public record NightHoldItemEvolution : IEvolution
{
@@ -117,12 +117,12 @@ public record NightHoldItemEvolution : IEvolution
/// </summary>
public required StringKey Item { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
/// <summary>
/// Evolves when the Pokemon knows a certain move, and the Pokemon levels up.
/// Evolves when the Pokémon knows a certain move, and the Pokémon levels up.
/// </summary>
public record HasMoveEvolution : IEvolution
{
@@ -131,12 +131,12 @@ public record HasMoveEvolution : IEvolution
/// </summary>
public required StringKey MoveName { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
/// <summary>
/// Evolves when above a certain happiness level, and the Pokemon levels up.
/// Evolves when above a certain happiness level, and the Pokémon levels up.
/// </summary>
public record HappinessEvolution : IEvolution
{
@@ -145,12 +145,12 @@ public record HappinessEvolution : IEvolution
/// </summary>
public required byte Happiness { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
/// <summary>
/// Evolves when above a certain happiness level, and the Pokemon levels up, and it's day.
/// Evolves when above a certain happiness level, and the Pokémon levels up, and it's day.
/// </summary>
public record HappinessDayEvolution : IEvolution
{
@@ -159,12 +159,12 @@ public record HappinessDayEvolution : IEvolution
/// </summary>
public required byte Happiness { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
/// <summary>
/// Evolves when above a certain happiness level, and the Pokemon levels up, and it's night.
/// Evolves when above a certain happiness level, and the Pokémon levels up, and it's night.
/// </summary>
public record HappinessNightEvolution : IEvolution
{
@@ -173,7 +173,7 @@ public record HappinessNightEvolution : IEvolution
/// </summary>
public required byte Happiness { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
@@ -182,7 +182,7 @@ public record HappinessNightEvolution : IEvolution
/// </summary>
public record TradeEvolution : IEvolution
{
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
@@ -196,7 +196,7 @@ public record TradeSpeciesEvolution : IEvolution
/// </summary>
public required StringKey WithSpecies { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
@@ -210,7 +210,7 @@ public record TradeItemEvolution : IEvolution
/// </summary>
public required StringKey Item { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}
@@ -229,6 +229,6 @@ public record CustomEvolution : IEvolution
/// </summary>
public required IReadOnlyDictionary<StringKey, object> Parameters { get; init; }
/// < inheritdoc />
/// <inheritdoc />
public required StringKey ToSpecies { get; init; }
}