| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Game.LambdaHack.Server.HandleAtomicM
Contents
Description
Handle atomic commands on the server, after they are executed
to change server State and before they are sent to clients.
Synopsis
- cmdAtomicSemSer :: MonadServer m => State -> UpdAtomic -> m ()
- invalidateArenas :: MonadServer m => m ()
- updateSclear :: MonadServer m => LevelId -> Point -> ContentId TileKind -> ContentId TileKind -> m Bool
- updateSlit :: MonadServer m => LevelId -> Point -> ContentId TileKind -> ContentId TileKind -> m Bool
- invalidateLucidLid :: MonadServer m => LevelId -> m ()
- invalidateLucidAid :: MonadServer m => ActorId -> m ()
- actorHasShine :: ActorAspect -> ActorId -> Bool
- itemAffectsShineRadius :: DiscoveryAspect -> ItemId -> [CStore] -> Bool
- itemAffectsPerRadius :: DiscoveryAspect -> ItemId -> Bool
- addPerActor :: MonadServer m => ActorId -> Actor -> m ()
- addPerActorAny :: MonadServer m => ActorId -> Actor -> m ()
- deletePerActor :: MonadServer m => ActorAspect -> ActorId -> Actor -> m ()
- deletePerActorAny :: MonadServer m => ActorId -> Actor -> m ()
- invalidatePerActor :: MonadServer m => ActorId -> m ()
- reconsiderPerActor :: MonadServer m => ActorId -> m ()
- invalidatePerLid :: MonadServer m => LevelId -> m ()
Documentation
cmdAtomicSemSer :: MonadServer m => State -> UpdAtomic -> m () #
Effect of atomic actions on server state is calculated
with the global state from after the command is executed
(except where the supplied oldState is used).
Internal operations
invalidateArenas :: MonadServer m => m () #
updateSclear :: MonadServer m => LevelId -> Point -> ContentId TileKind -> ContentId TileKind -> m Bool #
updateSlit :: MonadServer m => LevelId -> Point -> ContentId TileKind -> ContentId TileKind -> m Bool #
invalidateLucidLid :: MonadServer m => LevelId -> m () #
invalidateLucidAid :: MonadServer m => ActorId -> m () #
actorHasShine :: ActorAspect -> ActorId -> Bool #
itemAffectsShineRadius :: DiscoveryAspect -> ItemId -> [CStore] -> Bool #
itemAffectsPerRadius :: DiscoveryAspect -> ItemId -> Bool #
addPerActor :: MonadServer m => ActorId -> Actor -> m () #
addPerActorAny :: MonadServer m => ActorId -> Actor -> m () #
deletePerActor :: MonadServer m => ActorAspect -> ActorId -> Actor -> m () #
deletePerActorAny :: MonadServer m => ActorId -> Actor -> m () #
invalidatePerActor :: MonadServer m => ActorId -> m () #
reconsiderPerActor :: MonadServer m => ActorId -> m () #
invalidatePerLid :: MonadServer m => LevelId -> m () #