34 lines
627 B
Haskell
34 lines
627 B
Haskell
|
data CardSym = Card1 -- | Card2 | Card3 | Card4 etc etc
|
||
|
data TypeSym = Angel
|
||
|
| Character
|
||
|
| MainCharacter
|
||
|
| Instrumentality
|
||
|
| Battle
|
||
|
| Put
|
||
|
| Drama
|
||
|
| Eva
|
||
|
|
||
|
|
||
|
data CardInfo = CardInfo
|
||
|
{ ciName :: String
|
||
|
, ciFaction :: Faction
|
||
|
, ci -- etc etc etc etc etc
|
||
|
}
|
||
|
|
||
|
data CardMeta = CardMeta
|
||
|
{ cmOwner :: PlayerId
|
||
|
}
|
||
|
|
||
|
type CardId = Integer
|
||
|
type PlayerId = Integer
|
||
|
|
||
|
class SymLookup where
|
||
|
getSym :: CardId -> CardSym
|
||
|
|
||
|
class MetaLookup where
|
||
|
getMeta :: CardId -> CardMeta
|
||
|
|
||
|
class CardLookup where
|
||
|
getCard :: CardSym -> CardInfo
|
||
|
|