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
|
|
|