mirror of
https://gitlab.com/Kwoth/nadekobot.git
synced 2025-09-11 01:38:27 -04:00
Experimenting with new deck
This commit is contained in:
35
src/Nadeko.Econ/NewDeck.cs
Normal file
35
src/Nadeko.Econ/NewDeck.cs
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
namespace Nadeko.Econ;
|
||||||
|
|
||||||
|
public abstract class NewDeck<TCard, TSuit>
|
||||||
|
where TCard: NewCard<TSuit>
|
||||||
|
where TSuit : Enum
|
||||||
|
{
|
||||||
|
public int CurrentCount { get; }
|
||||||
|
public int TotalCount { get; }
|
||||||
|
|
||||||
|
public abstract TCard Draw();
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract class NewCard<TSuit>
|
||||||
|
where TSuit: Enum
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public sealed class RegularCard : NewCard<RegularSuit>
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum RegularSuit
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public sealed class RegularDeck : NewDeck<RegularCard, RegularSuit>
|
||||||
|
{
|
||||||
|
public override RegularCard Draw()
|
||||||
|
=> throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Reference in New Issue
Block a user