40 lines
766 B
Haskell
40 lines
766 B
Haskell
module Scenes.Test.Types where
|
|
|
|
import Affection
|
|
|
|
import Linear
|
|
|
|
import Control.Concurrent.STM
|
|
|
|
import qualified Data.Vector as V
|
|
|
|
-- internal imports
|
|
|
|
import Types
|
|
import Graphics
|
|
|
|
data Test = Test
|
|
{ testMap :: TMVar LevelMap
|
|
, testGraphics :: TMVar GLAssets
|
|
, testLoaded :: TVar Bool
|
|
, testPlayer :: TVar (Maybe Pituicat)
|
|
, testStageSet :: TVar (V.Vector StageSet)
|
|
, testCast :: TVar (V.Vector Cast)
|
|
, testPowerups :: TVar (V.Vector PowerUp)
|
|
, testMatrices :: TVar PVM
|
|
, testClean :: TVar [UUID]
|
|
}
|
|
|
|
data GLAssets = GLAssets
|
|
{ glVA :: VertexArray
|
|
, glVB :: VertexBuffer
|
|
, glIB :: IndexBuffer
|
|
, glSP :: Shader
|
|
, glTx :: [Texture]
|
|
}
|
|
|
|
data PVM = PVM
|
|
{ pvmP :: M44 Float
|
|
, pvmV :: M44 Float
|
|
, pvmM :: M44 Float
|
|
}
|