diff --git a/bower.json b/bower.json index 5ebd5e1..08a80d7 100644 --- a/bower.json +++ b/bower.json @@ -17,15 +17,15 @@ ], "dependencies": { "rot.js": "^0.5.0", - "purescript-base": "^1.0.0", - "purescript-functions": "^1.0.0", - "purescript-arrays": "^1.0.0", - "purescript-options": "^1.0.0", - "purescript-foreign": "^1.0.0", - "purescript-eff": "^1.0.0" + "purescript-prelude": "^3.0.0", + "purescript-functions": "^3.0.0", + "purescript-arrays": "^4.0.0", + "purescript-options": "^3.0.0", + "purescript-foreign": "^4.0.0", + "purescript-eff": "^3.0.0" }, "devDependencies": { - "purescript-psci-support": "^1.0.0" + "purescript-psci-support": "^3.0.0" }, - "version": "0.0.1" + "version": "0.1.0" } diff --git a/src/RotJS/Display/RotJS-Display.purs b/src/RotJS/Display/RotJS-Display.purs index 7b8103a..8a915b6 100644 --- a/src/RotJS/Display/RotJS-Display.purs +++ b/src/RotJS/Display/RotJS-Display.purs @@ -17,17 +17,17 @@ module RotJS.Display ( ) where import Prelude -import Control.Monad.Eff (Eff) +import Control.Monad.Eff (Eff, kind Effect) import Data.Function.Uncurried (Fn4, runFn4, Fn2, runFn2) -import Data.Options (Option(), Options(), options, opt, (:=)) +import Data.Options (Option(), Options(), options, opt) import Data.Foreign (Foreign()) -- | `TTY` effect denotes computations which manipulate the ROT.js Display` -foreign import data TTY :: ! +foreign import data TTY :: Effect -- | ROT.js display context -foreign import data Display :: * -foreign import data DisplayConfig :: * +foreign import data Display :: Type +foreign import data DisplayConfig :: Type type Coord = {x :: Int, y :: Int} type Color = String diff --git a/src/RotJS/FOV/RotJS-FOV.purs b/src/RotJS/FOV/RotJS-FOV.purs index 6de563f..bc811a6 100644 --- a/src/RotJS/FOV/RotJS-FOV.purs +++ b/src/RotJS/FOV/RotJS-FOV.purs @@ -2,7 +2,7 @@ module RotJS.FOV (FOV, TransparencyMap, TransparencyCell, VisibilityMap, Visibil import Data.Function.Uncurried (Fn4, runFn4) -foreign import data FOV :: * +foreign import data FOV :: Type type TransparencyCell = Boolean type VisibilityCell = Boolean diff --git a/src/RotJS/Map/RotJS-Map.purs b/src/RotJS/Map/RotJS-Map.purs index 22cdf25..30c8e35 100644 --- a/src/RotJS/Map/RotJS-Map.purs +++ b/src/RotJS/Map/RotJS-Map.purs @@ -17,7 +17,7 @@ module RotJS.Map ( arena import Control.Monad.Eff (Eff) import Data.Function.Uncurried (Fn3, runFn3, Fn2, runFn2) -import Data.Options (Option(), Options(), options, opt, (:=)) +import Data.Options (Option(), Options(), options, opt) import RotJS.RNG as Random import Data.Foreign (Foreign()) @@ -57,7 +57,7 @@ foreign import buildRogueRaw :: forall eff. Fn2 Int Int (Eff (rotrng :: Random.R -- dugPercentage – algorithm stops after this fraction of map area has been dug out; default = 0.2 -- timeLimit – algorithm stops after this amount of milliseconds has passed -foreign import data MapGenConfig :: * +foreign import data MapGenConfig :: Type roomWidth :: Option MapGenConfig (Array Int) roomWidth = opt "roomWidth" diff --git a/src/RotJS/Path/RotJS-Path.purs b/src/RotJS/Path/RotJS-Path.purs index 509c9d1..1227ffd 100644 --- a/src/RotJS/Path/RotJS-Path.purs +++ b/src/RotJS/Path/RotJS-Path.purs @@ -11,7 +11,7 @@ type TraversableMap = { width :: Int, type Coord = {x :: Int, y :: Int} type Path = Array Coord -foreign import data PathGen :: * +foreign import data PathGen :: Type foreign import dijkstraRaw :: Fn3 TraversableMap Int diff --git a/src/RotJS/RNG/RotJS-RNG.purs b/src/RotJS/RNG/RotJS-RNG.purs index 31bbb5b..1a3006a 100644 --- a/src/RotJS/RNG/RotJS-RNG.purs +++ b/src/RotJS/RNG/RotJS-RNG.purs @@ -7,12 +7,12 @@ module RotJS.RNG ( RNG ) where import Prelude -import Control.Monad.Eff (Eff) +import Control.Monad.Eff (Eff, kind Effect) import Data.Function.Uncurried (Fn2, runFn2) -- | `RNG` effect denotes computations which manipulate the ROT.js RNG` -foreign import data RNG :: ! +foreign import data RNG :: Effect foreign import setSeed :: forall eff. Int -> Eff (rotrng :: RNG | eff) Unit foreign import getSeed :: forall eff. Eff (rotrng :: RNG | eff) Int diff --git a/src/RotJS/Scheduler/RotJS-Scheduler.purs b/src/RotJS/Scheduler/RotJS-Scheduler.purs index 75776c3..7c628c1 100644 --- a/src/RotJS/Scheduler/RotJS-Scheduler.purs +++ b/src/RotJS/Scheduler/RotJS-Scheduler.purs @@ -18,12 +18,12 @@ module RotJS.Scheduler ( ) where import Prelude -import Control.Monad.Eff (Eff) +import Control.Monad.Eff (Eff, kind Effect) import Data.Function.Uncurried (Fn2, runFn2, Fn3, runFn3) -- | `Scheduling` effect denotes computations which manipulate the ROT.js Scheduler` -foreign import data SCHEDULING :: ! -foreign import data SchedulerObject :: * +foreign import data SCHEDULING :: Effect +foreign import data SchedulerObject :: Type data SimpleScheduler = SimpleScheduler SchedulerObject data ActionScheduler = ActionScheduler SchedulerObject