Cleanup, think about removing creature "hammer"
This commit is contained in:
+8
-1
@@ -1,9 +1,16 @@
|
||||
module Dodge.Cuse where
|
||||
|
||||
import Dodge.Inventory
|
||||
import Control.Lens
|
||||
import Dodge.Data.World
|
||||
import Data.Maybe
|
||||
|
||||
useC :: Cuse -> Item -> Creature -> World -> World
|
||||
useC cu = case cu of
|
||||
useC cu itm cr = fromMaybe id $ do
|
||||
i <- itm ^? itLocation . ipInvID
|
||||
return $ rmInvItem (_crID cr) i . useC' cu itm cr
|
||||
|
||||
useC' :: Cuse -> Item -> Creature -> World -> World
|
||||
useC' cu = case cu of
|
||||
CDoNothing -> const $ const id
|
||||
CHeal x -> const $ \cr -> cWorld . lWorld . creatures . ix (_crID cr) . crHP +~ x
|
||||
|
||||
Reference in New Issue
Block a user