summaryrefslogtreecommitdiff
path: root/haskell/src/SpaceTraders/Model/Ship.hs
diff options
context:
space:
mode:
Diffstat (limited to 'haskell/src/SpaceTraders/Model/Ship.hs')
-rw-r--r--haskell/src/SpaceTraders/Model/Ship.hs28
1 files changed, 28 insertions, 0 deletions
diff --git a/haskell/src/SpaceTraders/Model/Ship.hs b/haskell/src/SpaceTraders/Model/Ship.hs
new file mode 100644
index 0000000..4228dca
--- /dev/null
+++ b/haskell/src/SpaceTraders/Model/Ship.hs
@@ -0,0 +1,28 @@
+{-# LANGUAGE DeriveAnyClass #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+
+module SpaceTraders.Model.Ship
+ ( Ship(..)
+ ) where
+
+import Data.Aeson
+import GHC.Generics
+import qualified Data.Text as T
+
+import SpaceTraders.Model.Cargo
+import SpaceTraders.Model.Fuel
+import SpaceTraders.Model.Nav
+
+data Ship = Ship { cargo :: Cargo
+ --, crew :: Crew
+ --, engine :: Engine
+ --, frame :: Frame
+ , fuel :: Fuel
+ --, modules :: [Module]
+ --, mounts :: [Mount]
+ , nav :: Nav
+ --, reactor :: Reactor
+ --, registration :: Registration
+ , symbol :: T.Text
+ } deriving (FromJSON, Generic, Show, ToJSON)