| Copyright | (c) Matt Hunzinger 2025 |
|---|---|
| License | BSD-style (see the LICENSE file in the distribution) |
| Maintainer | matt@hunzinger.me |
| Stability | provisional |
| Portability | non-portable (GHC extensions) |
| Safe Haskell | None |
| Language | Haskell2010 |
Aztecs.ECS.Access
Description
Synopsis
- newtype Access (m :: Type -> Type) a = Access {}
- runAccess :: Functor m => Access m a -> World m -> m (a, World m)
- runAccess_ :: Monad m => Access m a -> m a
- spawn :: forall (m :: Type -> Type). Monad m => BundleT m -> Access m EntityID
- spawn_ :: forall (m :: Type -> Type). Monad m => BundleT m -> Access m ()
- insert :: forall (m :: Type -> Type). Monad m => EntityID -> BundleT m -> Access m ()
- insertUntracked :: forall (m :: Type -> Type). Monad m => EntityID -> BundleT m -> Access m ()
- lookup :: forall (m :: Type -> Type) a. (Monad m, Component m a) => EntityID -> Access m (Maybe a)
- remove :: forall (m :: Type -> Type) a. (Monad m, Component m a) => EntityID -> Access m (Maybe a)
- despawn :: forall (m :: Type -> Type). Monad m => EntityID -> Access m ()
- system :: forall (m :: Type -> Type) a. Monad m => System m a -> Access m a
- triggerEvent :: forall (m :: Type -> Type) e. (Monad m, Event e) => e -> Access m ()
- triggerEntityEvent :: forall (m :: Type -> Type) e. (Monad m, Event e) => EntityID -> e -> Access m ()
Documentation
newtype Access (m :: Type -> Type) a Source #
Access into a World.
insertUntracked :: forall (m :: Type -> Type). Monad m => EntityID -> BundleT m -> Access m () Source #
Insert a component into an entity without running lifecycle hooks.
lookup :: forall (m :: Type -> Type) a. (Monad m, Component m a) => EntityID -> Access m (Maybe a) Source #
remove :: forall (m :: Type -> Type) a. (Monad m, Component m a) => EntityID -> Access m (Maybe a) Source #