{-# LANGUAGE DeriveGeneric #-}
module Battlesnake.API.GameRequest where
import Battlesnake.Core.Battlesnake (Battlesnake)
import Battlesnake.Core.Board (Board)
import Battlesnake.Core.Game (Game)
import Data.Aeson (FromJSON)
import GHC.Generics
{-|
The request sent to your battlesnake server on each turn.
This contains all the information you need to determine your snakes next move.}
-}
data GameRequest = GameRequest
{ game :: Game
-- ^ Information about the current game. (See "Battlesnake.Core.Game")
, turn :: Integer
-- ^ The turn beeing played.
, board :: Board
-- ^ The game board. (See "Battlesnake.Core.Board")
, you :: Battlesnake
-- ^ Your snake. (See "Battlesnake.Core.Battlesnake"")
}
deriving (Show, Generic)
instance FromJSON GameRequest