Defunction-ify item modules, requires more cleanup
This commit is contained in:
@@ -15,12 +15,12 @@ import Dodge.Item
|
||||
import System.Random
|
||||
import Control.Monad.State
|
||||
|
||||
bossKeyItems :: RandomGen g => [ (State g (SubCompTree Room), State g CombineType) ]
|
||||
bossKeyItems :: RandomGen g => [ (State g (SubCompTree Room), State g ItemBaseType) ]
|
||||
bossKeyItems =
|
||||
[(return . UseAll <$> bossRoom autoCrit, takeOne [PISTOL])
|
||||
]
|
||||
|
||||
lockRoomMultiItems :: RandomGen g => [ ( State g (LabSubCompTree Room) , State g [CombineType] ) ]
|
||||
lockRoomMultiItems :: RandomGen g => [ ( State g (LabSubCompTree Room) , State g [ItemBaseType] ) ]
|
||||
lockRoomMultiItems =
|
||||
[ (blinkAcrossChallenge, takeOne [[BLINKERUNSAFE,AUTODETECTOR WALLDETECTOR]
|
||||
,[BLINKERUNSAFE,CLICKDETECTOR WALLDETECTOR]
|
||||
@@ -28,7 +28,7 @@ lockRoomMultiItems =
|
||||
)
|
||||
]
|
||||
|
||||
lockRoomKeyItems :: RandomGen g => [ (Int -> State g (LabSubCompTree Room) , State g CombineType ) ]
|
||||
lockRoomKeyItems :: RandomGen g => [ (Int -> State g (LabSubCompTree Room) , State g ItemBaseType ) ]
|
||||
lockRoomKeyItems =
|
||||
[(lasCenSensEdge, takeOne [LAUNCHER,LASGUN,SPARKGUN,FLATSHIELD,FORCEFIELDGUN] )
|
||||
,(sensorRoomRunPast ELECTRICAL, takeOne [STATICMODULE,SPARKGUN] )
|
||||
@@ -40,12 +40,12 @@ lockRoomKeyItems =
|
||||
,(const $ lasTunnelRunPast 400, takeOne [FLATSHIELD,FORCEFIELDGUN])
|
||||
,(keyCardRoomRunPast 0, return (KEYCARD 0))
|
||||
]
|
||||
keyCardRunPastRand :: RandomGen g => [ (Int -> State g (LabSubCompTree Room) , State g CombineType ) ]
|
||||
keyCardRunPastRand :: RandomGen g => [ (Int -> State g (LabSubCompTree Room) , State g ItemBaseType ) ]
|
||||
keyCardRunPastRand =
|
||||
[(keyCardRoomRunPast 0, return (KEYCARD 0))
|
||||
]
|
||||
|
||||
itemRooms :: RandomGen g => [(CombineType, State g (LabSubCompTree Room))]
|
||||
itemRooms :: RandomGen g => [(ItemBaseType, State g (LabSubCompTree Room))]
|
||||
itemRooms =
|
||||
[ (LAUNCHER , join $ takeOne
|
||||
[corridorBoss launcherCrit
|
||||
|
||||
Reference in New Issue
Block a user