| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Mischief.ECS.Time
Synopsis
- class ToTime t where
- data Time = Time {}
- data VirtualTime = VirtualTime {}
- data TimeTypePref
- data TimeTag where
- time :: (HasCallStack, MonadSystem w m) => m Time
- timeMaybe :: MonadSystem w m => m (Maybe Time)
- qtime :: forall w (m :: Type -> Type). MonadSystem w m => Query m Time
- delta :: (HasCallStack, MonadSystem w m) => m Float
- qdelta :: forall w (m :: Type -> Type). MonadSystem w m => Query m Float
- elapsed :: (HasCallStack, MonadSystem w m) => m Float
- qelapsed :: forall w (m :: Type -> Type). MonadSystem w m => Query m Float
- specToSecs :: TimeSpec -> Float
- secsToSpec :: Float -> TimeSpec
- data TimePlugin
- updateTime :: System ()
Documentation
Instances
| ToTime FixedTime Source # | |
| ToTime VirtualTime Source # | |
Defined in Mischief.ECS.Time Methods toTime :: VirtualTime -> Time Source # | |
data VirtualTime Source #
Constructors
| VirtualTime | |
Fields | |
Instances
| Show VirtualTime Source # | |||||
Defined in Mischief.ECS.Time Methods showsPrec :: Int -> VirtualTime -> ShowS # show :: VirtualTime -> String # showList :: [VirtualTime] -> ShowS # | |||||
| Component VirtualTime Source # | |||||
Defined in Mischief.ECS.Time Associated Types
Methods required :: Set DefaultComponentType Source # onAdd :: [Hook VirtualTime] Source # onSet :: [Hook VirtualTime] Source # onRemove :: [Hook VirtualTime] Source # onAddRel :: [HookRel VirtualTime] Source # onSetRel :: [HookRel VirtualTime] Source # onRemoveRel :: [HookRel VirtualTime] Source # | |||||
| ToTime VirtualTime Source # | |||||
Defined in Mischief.ECS.Time Methods toTime :: VirtualTime -> Time Source # | |||||
| type IsExclusiveRel VirtualTime Source # | |||||
Defined in Mischief.ECS.Time | |||||
data TimeTypePref Source #
Instances
| PrefType TimeTypePref TimeTag Source # | |
Defined in Mischief.ECS.Time | |
Instances
| PrefType TimeTypePref TimeTag Source # | |
Defined in Mischief.ECS.Time | |
time :: (HasCallStack, MonadSystem w m) => m Time Source #
delta :: (HasCallStack, MonadSystem w m) => m Float Source #
elapsed :: (HasCallStack, MonadSystem w m) => m Float Source #
specToSecs :: TimeSpec -> Float Source #
secsToSpec :: Float -> TimeSpec Source #
data TimePlugin Source #
Plugin that keeps track of time. Enables calling delta, elapsed, and so on.
Note that these methods are context-dependent. For instance, if used in a Fixed schedule, delta will always return the time as inferred from the fixed frequency.
Instances
| Plugin TimePlugin Source # | |
Defined in Mischief.ECS.Time | |
updateTime :: System () Source #