module Types.Interior where

import Data.Matrix as M

-- internal imports

import Types.Map
import Types.UserData

data Cluster
  = ClusterBox1
  deriving (Enum, Bounded)

clusterMat :: Cluster -> Matrix (Maybe ImgId)
clusterMat ClusterBox1 =
  M.fromLists
    -- [ [         Nothing]
    [ [Just ImgMiscBox1]
    -- , [Nothing,          Nothing, Nothing]
    ]

clusterRoom :: Cluster -> TileState
clusterRoom ClusterBox1 = Offi

instance Size Cluster where
  size c =
    let mat = clusterMat c
    in  fromIntegral ((nrows mat) * (ncols mat))

-- class ClusterData c where
--   clusterMat :: c -> Matrix (Maybe ImgId)
