From 8fb42bca2db2c91fbbed82083e917247217f72ce Mon Sep 17 00:00:00 2001 From: justin Date: Tue, 15 Mar 2022 08:54:45 +0000 Subject: [PATCH] Create file --- src/Dodge/Machine.hs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 src/Dodge/Machine.hs diff --git a/src/Dodge/Machine.hs b/src/Dodge/Machine.hs new file mode 100644 index 000000000..cc54bd9c5 --- /dev/null +++ b/src/Dodge/Machine.hs @@ -0,0 +1,17 @@ +module Dodge.Machine where +import Dodge.Data +import Dodge.Wall.Delete +import LensHelp + +import qualified Data.IntMap.Strict as IM + +machineUpdateDeathEff :: (Machine -> World -> World) + -> Machine -> World -> World +machineUpdateDeathEff f mc + | _mcHP mc < 1 = f mc + . (machines %~ IM.delete mcid) + . deleteWallIDs (_mcWallIDs mc) + | otherwise = machines . ix mcid %~ ( (mcDamage .~ []) . (mcHP -~ dams) ) + where + dams = sum $ map _dmAmount $ _mcDamage mc + mcid = _mcID mc