110 lines
3.0 KiB
Haskell
110 lines
3.0 KiB
Haskell
module Cards where
|
|
|
|
import Types
|
|
|
|
getCardInfo :: CardSym -> CardLib -> CardInfo
|
|
getCardInfo c cl = snd $ head $ filter (\(s, _) -> s == c) cl
|
|
|
|
getCardLine :: CardSym -> CardLib -> String
|
|
getCardLine c cl = '"' : ciLine (getCardInfo c cl) ++ '"'
|
|
|
|
gCardLib :: CardLib
|
|
gCardLib =
|
|
[ (S01_Shinji, ciS01_Shinji)
|
|
, (S02_Asuka, ciS02_Asuka)
|
|
, (S03_Rei, ciS03_Rei)
|
|
, (S04_Misato, ciS04_Misato)
|
|
, (S05_Ritsuko, ciS05_Ritsuko)
|
|
, (S06_Gendo, ciS06_Gendo)
|
|
]
|
|
|
|
ciS01_Shinji :: CardInfo
|
|
ciS01_Shinji = CardInfo
|
|
{ ciName = "3rd Child - Shinji Ikari"
|
|
, ciFaction = Blue
|
|
, ciType = Character
|
|
, ciText = "Can speak one blue card every turn."
|
|
, ciTraits = [Male]
|
|
, ciLineMarks = Just [(Circle, Blue)]
|
|
, ciLine = Just "I feel like I belong here!"
|
|
, ciDP = Just 0
|
|
, ciStrength = Nothing
|
|
, ciLevel = Nothing
|
|
, ciNextInst = Nothing
|
|
}
|
|
|
|
ciS02_Asuka :: CardInfo
|
|
ciS02_Asuka = CardInfo
|
|
{ ciName = "2nd Child - Asuka Langley-Soryu"
|
|
, ciFaction = Red
|
|
, ciType = Character
|
|
, ciText = "Can speak one red card every turn."
|
|
, ciTraits = [Female]
|
|
, ciLineMarks = Just [(Triangle, Blue), (Triangle, Green), (Triangle, Yellow)]
|
|
, ciLine = Just "What're you, stupid?!"
|
|
, ciDP = Just 1
|
|
, ciStrength = Nothing
|
|
, ciLevel = Nothing
|
|
, ciNextInst = Nothing
|
|
}
|
|
|
|
ciS03_Rei :: CardInfo
|
|
ciS03_Rei = CardInfo
|
|
{ ciName = "1st Child - Rei Ayanami"
|
|
, ciFaction = White
|
|
, ciType = Character
|
|
, ciText = "Can speak one white card every turn. All white lines are zero DP. If down at the start of the Opening Draw phase, Rei recovers automatically."
|
|
, ciTraits = [Female]
|
|
, ciLineMarks = Just [(Circle, White)]
|
|
, ciLine = Just "I feel connected."
|
|
, ciDP = Just (-1)
|
|
, ciStrength = Nothing
|
|
, ciLevel = Nothing
|
|
, ciNextInst = Nothing
|
|
}
|
|
|
|
ciS04_Misato :: CardInfo
|
|
ciS04_Misato = CardInfo
|
|
{ ciName = "Misato Katsuragi"
|
|
, ciFaction = Green
|
|
, ciType = Character
|
|
, ciText = "Can speak one green card every turn."
|
|
, ciTraits = [Female]
|
|
, ciLineMarks = Just [(Circle, Green)]
|
|
, ciLine = Just "We can't wait for a miracle, let's give it our best shot."
|
|
, ciDP = Just 0
|
|
, ciStrength = Nothing
|
|
, ciLevel = Nothing
|
|
, ciNextInst = Nothing
|
|
}
|
|
|
|
ciS05_Ritsuko :: CardInfo
|
|
ciS05_Ritsuko = CardInfo
|
|
{ ciName = "Ritsuko Akagi"
|
|
, ciFaction = Yellow
|
|
, ciType = Character
|
|
, ciText = "Can speak one yellow card every turn."
|
|
, ciTraits = [Female]
|
|
, ciLineMarks = Just [(Circle, Yellow)]
|
|
, ciLine = Just "The one Unit Zero was after was me."
|
|
, ciDP = Just 0
|
|
, ciStrength = Nothing
|
|
, ciLevel = Nothing
|
|
, ciNextInst = Nothing
|
|
}
|
|
|
|
ciS06_Gendo :: CardInfo
|
|
ciS06_Gendo = CardInfo
|
|
{ ciName = "Gendo Ikari"
|
|
, ciFaction = Black
|
|
, ciType = Character
|
|
, ciText = "Can speak one black card every turn."
|
|
, ciTraits = [Male]
|
|
, ciLineMarks = Just [(Circle, Black)]
|
|
, ciLine = Just "There is no problem."
|
|
, ciDP = Just (-1)
|
|
, ciStrength = Nothing
|
|
, ciLevel = Nothing
|
|
, ciNextInst = Nothing
|
|
}
|