27 lines
739 B
Haskell
27 lines
739 B
Haskell
{-# LANGUAGE TemplateHaskell #-}
|
|
{-# LANGUAGE StrictData #-}
|
|
module Dodge.Annotation.Data where
|
|
import Dodge.Data
|
|
--import Dodge.Room
|
|
--import TreeHelp
|
|
import Dodge.Tree.Compose.Data
|
|
|
|
import Control.Monad.State
|
|
import Control.Lens
|
|
import System.Random
|
|
|
|
type MTRS = MetaTree Room String
|
|
|
|
data Annotation
|
|
= ModifyTree (MetaTree Room String -> MetaTree Room String) Annotation
|
|
| OnwardList [Annotation]
|
|
| IntAnno (Int -> Annotation)
|
|
| AnRoom (State StdGen Room)
|
|
| AnTree (State StdGen (MetaTree Room String))
|
|
| PassthroughLockKeyLists
|
|
[(Int -> State StdGen (MetaTree Room String), State StdGen ItemBaseType)]
|
|
[(ItemBaseType, State StdGen (MetaTree Room String))]
|
|
Int
|
|
|
|
makeLenses ''Annotation
|