Work on bullet module system

This commit is contained in:
2022-02-20 18:50:11 +00:00
parent 7afc367abc
commit 779e076c93
6 changed files with 44 additions and 8 deletions
+5 -3
View File
@@ -67,6 +67,7 @@ addModules (ps,it) = (is , ) <$> [ (it & itModules .~ themodules,s) | (themodule
where
(ms,is) = unzip ps
combinedmodules = foldr f [(_itModules it,[])] ms
f :: ItemModules -> [(ItemModules,[String])] -> [(ItemModules,[String])]
f ims imss = concatMap (g ims) imss
g ims (ims',s) = map (second (s++)) $ combineModules ims ims'
@@ -75,10 +76,11 @@ combineModules (ItemModules a1) (ItemModules a2)
= [(ItemModules a,ss) | (a,ss) <- combineModule a1 a2]
combineModule :: ItemModule a -> ItemModule a -> [(ItemModule a,[String])]
combineModule BlockedModule (ItemModule _ ss _) = [(BlockedModule, "WARNING:REMOVES":ss)]
combineModule BlockedModule _ = [(BlockedModule,["a"])]
combineModule m BlockedModule = [(m,[])]
combineModule (ItemModule _ ss _) BlockedModule = [(BlockedModule, "WARNING:REMOVES":ss)]
combineModule _ BlockedModule = [(BlockedModule, [])]
combineModule BlockedModule m = [(m,[])]
combineModule DefaultModule m = [(m,[])]
combineModule (ItemModule _ ss _) m@ItemModule{} = [(m,"WARNING:REMOVES":ss)]
combineModule m _ = [(m,[])]
toggleCombineInv :: World -> World