summaryrefslogtreecommitdiff
path: root/haskell/src/SpaceTraders/Model/Agent.hs
blob: be97ac42d03ca1d7d7383469dca48de2cae7b224 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}

module SpaceTraders.Model.Agent
  ( Agent(accountId, credits, headquarters)
  , agentSymbol
  ) where

import Data.Aeson
import GHC.Generics
import qualified Data.Text as T

data Agent = Agent { accountId :: T.Text
                   , credits :: Integer
                   , headquarters :: T.Text
                   , startingFaction :: T.Text
                   , symbol :: T.Text
                   } deriving (FromJSON, Generic, Show, ToJSON)

agentSymbol :: Agent -> T.Text
agentSymbol = symbol