Refactor, try to limit dependencies
This commit is contained in:
+13
-11
@@ -1,23 +1,25 @@
|
||||
module Dodge.Wall.Delete
|
||||
( deleteWallIDs
|
||||
, deleteWallID
|
||||
) where
|
||||
import Dodge.Data
|
||||
import Dodge.Wall.Zone
|
||||
module Dodge.Wall.Delete (
|
||||
deleteWallIDs,
|
||||
deleteWallID,
|
||||
) where
|
||||
|
||||
import Control.Lens
|
||||
import qualified IntMapHelp as IM
|
||||
import qualified Data.IntSet as IS
|
||||
import Dodge.Data.World
|
||||
import Dodge.Wall.Zone
|
||||
import qualified IntMapHelp as IM
|
||||
|
||||
deleteWallID :: Int -> World -> World
|
||||
deleteWallID i w = w & cWorld . walls %~ IM.delete i
|
||||
& deleteWallFromZones wl
|
||||
deleteWallID i w =
|
||||
w & cWorld . walls %~ IM.delete i
|
||||
& deleteWallFromZones wl
|
||||
where
|
||||
wl = _walls (_cWorld w) IM.! i
|
||||
|
||||
deleteWall :: Wall -> World -> World
|
||||
deleteWall wl = (cWorld . walls %~ IM.delete i)
|
||||
. deleteWallFromZones wl
|
||||
deleteWall wl =
|
||||
(cWorld . walls %~ IM.delete i)
|
||||
. deleteWallFromZones wl
|
||||
where
|
||||
i = _wlID wl
|
||||
|
||||
|
||||
Reference in New Issue
Block a user