networked-game 0.1.0.0 → 0.1.0.1
raw patch · 3 files changed
+13/−9 lines, 3 filesdep ~basedep ~binarydep ~bytestring
Dependency ranges changed: base, binary, bytestring, containers, network, time, transformers
Files
networked-game.cabal view
@@ -2,20 +2,23 @@ -- documentation, see http://haskell.org/cabal/users-guide/ name: networked-game-version: 0.1.0.0+version: 0.1.0.1 synopsis: Networked-game support library--- description: license: BSD3 license-file: LICENSE author: Eric Mertens maintainer: emertens@gmail.com--- copyright: category: Network build-type: Simple cabal-version: >=1.8 library exposed-modules: NetworkedGame.Handles, NetworkedGame.Packet, NetworkedGame.Server- -- other-modules: - build-depends: base == 4.6.*, containers, bytestring, binary, transformers, time, network+ build-depends: base >= 4.6 && < 4.8,+ containers < 0.6,+ bytestring < 0.11,+ binary < 0.8,+ transformers < 0.5,+ time < 1.6,+ network < 2.7 hs-source-dirs: src
src/NetworkedGame/Handles.hs view
@@ -12,7 +12,7 @@ newtype Handles = Handles (IntMap Handle) newtype ConnectionId = ConnectionId Int- deriving (Eq, Show, Ord)+ deriving (Eq, Show, Ord, Read) emptyHandles :: Handles emptyHandles = Handles IntMap.empty
src/NetworkedGame/Server.hs view
@@ -8,7 +8,7 @@ import Control.Concurrent (forkIO, threadDelay, ThreadId, Chan, newChan, readChan, writeChan) import Control.Exception (SomeException, handle, bracket_)-import Control.Monad (forM_, forever)+import Control.Monad (forM_, forever, when) import Control.Monad.IO.Class (MonadIO(liftIO)) import Data.Binary (Binary, encode, decode) import Data.Foldable (for_)@@ -116,8 +116,9 @@ Chan (ServerEvent c) {- ^ outgoing tick queue -} -> IO () tickThread env events =- forever $ do writeChan events TickEvent- threadDelay $ 1000000 `div` eventsPerSecond env+ when (eventsPerSecond env > 0) $+ forever $ do writeChan events TickEvent+ threadDelay $ 1000000 `div` eventsPerSecond env data ServerEvent c = TickEvent