Move toward data-ifying item SPics
This commit is contained in:
@@ -17,59 +17,57 @@ import LensHelp
|
||||
itemCombinations :: [([(IcAmount,ItemBaseType)],Item)]
|
||||
itemCombinations =
|
||||
[ po [CRAFT PIPE, CRAFT HARDWARE] (bangStick 1)
|
||||
, po [BANGSTICK 1, CRAFT TIN] pistol
|
||||
, po [PISTOL, CRAFT SPRING] autoPistol
|
||||
, po [AUTOPISTOL, cr PLANK] smg
|
||||
, po [AUTOPISTOL, cr SPRING] machinePistol
|
||||
, po [BANGSTICK 1,cr CAN] revolver
|
||||
, po [REVOLVER, cr SPRING] $ revolverX 1
|
||||
, po [HELD (BANGSTICK 1), CRAFT TIN] pistol
|
||||
, po [HELD PISTOL, CRAFT SPRING] autoPistol
|
||||
, po [HELD AUTOPISTOL, cr PLANK] smg
|
||||
, po [HELD AUTOPISTOL, cr SPRING] machinePistol
|
||||
, po [HELD (BANGSTICK 1),cr CAN] revolver
|
||||
, po [HELD REVOLVER, cr SPRING] $ revolverX 1
|
||||
|
||||
, po [cr CAN,cr HARDWARE] bangCone
|
||||
, po [BANGCONE,cr PLANK] blunderbuss
|
||||
, po [BLUNDERBUSS,cr DRUM] (grapeCannon 1)
|
||||
, po [HELD BANGCONE,cr PLANK] blunderbuss
|
||||
, po [HELD BLUNDERBUSS,cr DRUM] (grapeCannon 1)
|
||||
-- , po [BANGCONE,PUMP,HARDWARE] $ grenadeLauncher 1
|
||||
-- , po [GRENADELAUNCHER 1,MOTOR,DRUM] $ grenadeLauncher 2
|
||||
|
||||
-- , po [cr PIPE, cr HARDWARE] (volleyGun 1)
|
||||
, po [BANGSTICK 1,cr PLANK] rifle
|
||||
, po [BANGSTICK 1,BANGSTICK 1,BANGSTICK 1] (volleyGun 3)
|
||||
, po [RIFLE,cr TIN] repeater
|
||||
, po [REPEATER,cr SPRING] autoRifle
|
||||
, po [REPEATER,cr CAN] burstRifle
|
||||
, po [HELD (BANGSTICK 1),cr PLANK] rifle
|
||||
, po [HELD (BANGSTICK 1),HELD (BANGSTICK 1),HELD (BANGSTICK 1)] (volleyGun 3)
|
||||
, po [HELD RIFLE,cr TIN] repeater
|
||||
, po [HELD REPEATER,cr SPRING] autoRifle
|
||||
, po [HELD REPEATER,cr CAN] burstRifle
|
||||
-- , po [BURSTRIFLE,cr SPRING,cr HARDWARE] fastBurstRifle
|
||||
-- , po [FASTBURSTRIFLE,cr SPRING,cr HARDWARE] completeBurstRifle
|
||||
, po [cr MOTOR,VOLLEYGUN 3] $ miniGunX 3
|
||||
, po [cr MOTOR,VOLLEYGUN 4] $ miniGunX 4
|
||||
, po [cr MOTOR,VOLLEYGUN 5] $ miniGunX 5
|
||||
, po [cr MOTOR,VOLLEYGUN 6] $ miniGunX 6
|
||||
|
||||
]
|
||||
++ [ po [cr MOTOR,HELD (VOLLEYGUN i)] $ miniGunX i | i <- [3..10]
|
||||
] ++
|
||||
-- , po [BANGSTICK 1,cr TUBE] elephantGun
|
||||
, po [AMR,cr PIPE] sniperRifle
|
||||
, po [RIFLE,cr PIPE] amr
|
||||
, po [AMR,cr SPRING] autoAmr
|
||||
, po [AMR,cr MOTOR] machineGun
|
||||
[ po [HELD AMR,cr PIPE] sniperRifle
|
||||
, po [HELD RIFLE,cr PIPE] amr
|
||||
, po [HELD AMR,cr SPRING] autoAmr
|
||||
, po [HELD AMR,cr MOTOR] machineGun
|
||||
|
||||
, p [p 2 $ cr TUBE,o $ cr HARDWARE] launcher
|
||||
, p [p 2 $ cr TUBE,o LAUNCHER] (launcherX 2)
|
||||
] ++ [ p [p 2 $ cr TUBE,o $ LAUNCHERX i] (launcherX (i+1)) | i <- [2..9]]
|
||||
, p [p 2 $ cr TUBE,o $ HELD LAUNCHER] (launcherX 2)
|
||||
] ++ [ p [p 2 $ cr TUBE,o $ HELD (LAUNCHERX i)] (launcherX (i+1)) | i <- [2..9]]
|
||||
++
|
||||
[ po [cr LIGHTER,cr PUMP,cr CAN] flameSpitter
|
||||
, po [FLAMESPITTER,cr CAN,cr PUMP] blowTorch
|
||||
, po [FLAMESPITTER,cr DRUM] flameThrower
|
||||
, po [FLAMETHROWER,cr DRUM] flameWall
|
||||
, po [FLAMETHROWER,cr PUMP] flameTorrent
|
||||
, po [HELD FLAMESPITTER,cr CAN,cr PUMP] blowTorch
|
||||
, po [HELD FLAMESPITTER,cr DRUM] flameThrower
|
||||
, po [HELD FLAMETHROWER,cr DRUM] flameWall
|
||||
, po [HELD FLAMETHROWER,cr PUMP] flameTorrent
|
||||
|
||||
, p [o $ cr PRISM,o $ cr TRANSFORMER,o $ cr PIPE] lasGun
|
||||
-- , p [o LASGUN,o $ cr PRISM] lasSway
|
||||
-- , p [o LASGUN,o $ cr HARDWARE] lasSwing
|
||||
-- , p [o LASGUN,o PIPE] lasGunPulse
|
||||
, po [LASGUN,LASGUN,cr HARDWARE] dualBeam
|
||||
, po [HELD LASGUN,HELD LASGUN,cr HARDWARE] dualBeam
|
||||
-- , p [o LASGUN,o $ cr PIPE, o $ cr PRISM] lasWidePulse
|
||||
, po [LASGUN, cr TRANSFORMER] (lasWide 2)
|
||||
, po [LASGUN,LASGUN,LASGUN,cr HARDWARE] lasCircle
|
||||
, po [HELD LASGUN, cr TRANSFORMER] (lasWide 2)
|
||||
, po [HELD LASGUN,HELD LASGUN,HELD LASGUN,cr HARDWARE] lasCircle
|
||||
|
||||
, p [o $ cr TRANSFORMER,p 2 $ cr CAN] sparkGun
|
||||
, p [o SPARKGUN,p 2 $ cr PIPE] teslaGun
|
||||
, p [o (HELD SPARKGUN),p 2 $ cr PIPE] teslaGun
|
||||
|
||||
, p [o $ cr TELEPORTMODULE,p 2 $ cr MICROCHIP] blinkGun
|
||||
, p [o BLINKER, p 2 $ cr MICROCHIP] unsafeBlinkGun
|
||||
@@ -84,13 +82,13 @@ itemCombinations =
|
||||
|
||||
, p [p 2 $ cr PLATE] flatShield
|
||||
]
|
||||
++ map (\i -> po [LASWIDE i,cr TRANSFORMER] $ lasWide (i+1)) [2..9]
|
||||
++ map (\i -> po [HELD (LASWIDE i),cr TRANSFORMER] $ lasWide (i+1)) [2..9]
|
||||
-- ++ map (\i -> po [LASGUNWIDE i,cr HARDWARE] $ lasFocus i) [2..10]
|
||||
++ map (\i -> po [cr PIPE,BANGSTICK i] $ bangStick (i+1)) [1..8]
|
||||
++ map (\i -> po [REVOLVERX i,cr CAN] $ revolverX (i+1)) [1..5]
|
||||
++ map (\i -> po [VOLLEYGUN i,BANGSTICK 1] $ volleyGun (i+1)) [3..5]
|
||||
++ map (\i -> po [MINIGUNX i,BANGSTICK 1] $ miniGunX (i+1)) [3..15]
|
||||
++ map (\i -> po [GRAPECANNON i,cr DRUM] $ grapeCannon (i+1)) [1,2,3]
|
||||
++ map (\i -> po [cr PIPE,HELD (BANGSTICK i)] $ bangStick (i+1)) [1..8]
|
||||
++ map (\i -> po [HELD (REVOLVERX i),cr CAN] $ revolverX (i+1)) [1..5]
|
||||
++ map (\i -> po [HELD (VOLLEYGUN i),HELD (BANGSTICK 1)] $ volleyGun (i+1)) [3..5]
|
||||
++ map (\i -> po [HELD (MINIGUNX i),HELD (BANGSTICK 1)] $ miniGunX (i+1)) [3..15]
|
||||
++ map (\i -> po [HELD (GRAPECANNON i),cr DRUM] $ grapeCannon (i+1)) [1,2,3]
|
||||
|
||||
++ [ po (_iyBase (_itType it):mtype) $ it & itType . iyModules . ix modtype .~ m
|
||||
| (modtype,is,ms) <- moduleCombinations
|
||||
@@ -181,7 +179,7 @@ batteryGuns =
|
||||
, sparkGun
|
||||
, lasGun
|
||||
-- , lasSway
|
||||
, lasSwing
|
||||
-- , lasSwing
|
||||
] ++
|
||||
[ lasWide i | i <- [2..10]
|
||||
]
|
||||
|
||||
+39
-34
@@ -72,7 +72,42 @@ data ItemBaseType
|
||||
| EFFGUN String
|
||||
| AUTOEFFGUN String
|
||||
-- Weapons
|
||||
| BANGSTICK {_xNum :: Int}
|
||||
| HELD {_ibtHeld :: HeldItemType}
|
||||
-- | GRENADE
|
||||
-- | REMOTEBOMB
|
||||
-- Utility items
|
||||
| BOOSTER
|
||||
| REWINDER
|
||||
| BLINKER
|
||||
| BLINKERUNSAFE
|
||||
| SHRINKER
|
||||
| SPAWNER
|
||||
-- Equipment
|
||||
| CLICKDETECTOR Detector
|
||||
| AUTODETECTOR Detector
|
||||
| MAGSHIELD
|
||||
| FLAMESHIELD
|
||||
| FRONTARMOUR
|
||||
| WRISTARMOUR
|
||||
| INVISIBILITYEQUIPMENT EquipSite
|
||||
| BRAINHAT
|
||||
| HEADLAMP
|
||||
| HEADLAMP1
|
||||
| POWERLEGS
|
||||
| SPEEDLEGS
|
||||
| JUMPLEGS
|
||||
| FLATSHIELD
|
||||
| JETPACK
|
||||
--
|
||||
| KEYCARD Int
|
||||
--
|
||||
| MEDKIT Int
|
||||
| CRAFT CraftType
|
||||
--
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
data HeldItemType
|
||||
= BANGSTICK {_xNum :: Int}
|
||||
| PISTOL
|
||||
| REVOLVER
|
||||
| REVOLVERX {_xNum :: Int}
|
||||
@@ -109,9 +144,9 @@ data ItemBaseType
|
||||
| TESLAGUN
|
||||
| LASGUN
|
||||
| LASCIRCLE
|
||||
| LASPULSE
|
||||
-- | LASPULSE
|
||||
| DUALBEAM
|
||||
| LASGUNSWING
|
||||
-- | LASGUNSWING
|
||||
-- | LASGUNSWAY
|
||||
-- | LASGUNWIDEPULSE
|
||||
| LASWIDE {_xNum :: Int}
|
||||
@@ -126,38 +161,8 @@ data ItemBaseType
|
||||
| DRONELAUNCHER
|
||||
|
||||
| SHATTERGUN
|
||||
-- | GRENADE
|
||||
-- | REMOTEBOMB
|
||||
-- Utility items
|
||||
| BOOSTER
|
||||
| REWINDER
|
||||
| BLINKER
|
||||
| BLINKERUNSAFE
|
||||
|
||||
| FORCEFIELDGUN
|
||||
| SHRINKER
|
||||
| SPAWNER
|
||||
-- Equipment
|
||||
| CLICKDETECTOR Detector
|
||||
| AUTODETECTOR Detector
|
||||
| MAGSHIELD
|
||||
| FLAMESHIELD
|
||||
| FRONTARMOUR
|
||||
| WRISTARMOUR
|
||||
| INVISIBILITYEQUIPMENT EquipSite
|
||||
| BRAINHAT
|
||||
| HEADLAMP
|
||||
| HEADLAMP1
|
||||
| POWERLEGS
|
||||
| SPEEDLEGS
|
||||
| JUMPLEGS
|
||||
| FLATSHIELD
|
||||
| JETPACK
|
||||
--
|
||||
| KEYCARD Int
|
||||
--
|
||||
| MEDKIT Int
|
||||
| CRAFT CraftType
|
||||
--
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
data ItemModuleType
|
||||
|
||||
@@ -43,13 +43,13 @@ bulletCombinations = filter
|
||||
|
||||
maxShowX :: ItemBaseType -> Maybe Int
|
||||
maxShowX bt = case bt of
|
||||
BANGSTICK _ -> Just 2
|
||||
REVOLVERX _ -> Just 1
|
||||
VOLLEYGUN _ -> Just 3
|
||||
MINIGUNX _ -> Just 3
|
||||
GRAPECANNON _ -> Just 1
|
||||
LAUNCHERX _ -> Just 2
|
||||
LASWIDE _ -> Just 2
|
||||
HELD (BANGSTICK _) -> Just 2
|
||||
HELD (REVOLVERX _) -> Just 1
|
||||
HELD (VOLLEYGUN _) -> Just 3
|
||||
HELD (MINIGUNX _) -> Just 3
|
||||
HELD (GRAPECANNON _) -> Just 1
|
||||
HELD (LAUNCHERX _) -> Just 2
|
||||
HELD (LASWIDE _) -> Just 2
|
||||
-- LASGUNFOCUS _ -> Just 2
|
||||
_ -> Nothing
|
||||
|
||||
@@ -73,12 +73,12 @@ combinationsGraph = FGL.labnfilter (f . _unCombNode . snd)
|
||||
f (Left (CRAFT _)) = False
|
||||
f (Left bt) = case maxShowX bt of
|
||||
Nothing -> True
|
||||
Just i -> _xNum bt <= i
|
||||
Just i -> _xNum (_ibtHeld bt) <= i
|
||||
|
||||
belowNumX :: ItemBaseType -> Bool
|
||||
belowNumX bt = case maxShowX bt of
|
||||
Nothing -> True
|
||||
Just i -> _xNum bt <= i
|
||||
Just i -> _xNum (_ibtHeld bt) <= i
|
||||
|
||||
toCombNodeLabel :: CombNode -> String
|
||||
toCombNodeLabel (CombNode (Left ibt)) = show ibt
|
||||
|
||||
Reference in New Issue
Block a user