diff --git a/graph/itemCombinations.gv b/graph/itemCombinations.gv deleted file mode 100644 index 1575d3527..000000000 --- a/graph/itemCombinations.gv +++ /dev/null @@ -1,281 +0,0 @@ -digraph { - graph [rankdir=LR]; - subgraph 1 { - 1 [shape=box - ,label="EQUIP {_ibtEquip = FUELPACK}"]; - 5 [shape=box - ,label="AMMOMAG {_ibtAmmoMag = TINMAG}"]; - 9 [shape=box - ,label="HELD {_ibtHeld = BANGSTICK {_xNum = 1}}"]; - 13 [shape=box - ,label="HELD {_ibtHeld = PISTOL}"]; - 15 [shape=box - ,label="HELD {_ibtHeld = AUTOPISTOL}"]; - 17 [shape=box - ,label="HELD {_ibtHeld = SMG}"]; - 20 [shape=box - ,label="HELD {_ibtHeld = MACHINEPISTOL}"]; - 22 [shape=box - ,label="HELD {_ibtHeld = BANGCONE}"]; - 25 [shape=box - ,label="HELD {_ibtHeld = BLUNDERBUSS}"]; - 27 [shape=box - ,label="HELD {_ibtHeld = GRAPECANNON {_xNum = 1}}"]; - 29 [shape=box - ,label="HELD {_ibtHeld = RIFLE}"]; - 31 [shape=box - ,label="HELD {_ibtHeld = VOLLEYGUN {_xNum = 3}}"]; - 33 [shape=box - ,label="HELD {_ibtHeld = AUTORIFLE}"]; - 35 [shape=box - ,label="HELD {_ibtHeld = BURSTRIFLE}"]; - 37 [shape=box - ,label="HELD {_ibtHeld = MINIGUNX {_xNum = 3}}"]; - 40 [shape=box - ,label="HELD {_ibtHeld = SNIPERRIFLE}"]; - 41 [shape=box - ,label="HELD {_ibtHeld = AMR}"]; - 44 [shape=box - ,label="HELD {_ibtHeld = AUTOAMR}"]; - 46 [shape=box - ,label="HELD {_ibtHeld = RLAUNCHER}"]; - 49 [shape=box - ,label="HELD {_ibtHeld = RLAUNCHERX {_xNum = 2}}"]; - 53 [shape=box - ,label="HELD {_ibtHeld = FLAMESPITTER}"]; - 57 [shape=box - ,label="HELD {_ibtHeld = BLOWTORCH}"]; - 59 [shape=box - ,label="HELD {_ibtHeld = FLAMETHROWER}"]; - 61 [shape=box - ,label="HELD {_ibtHeld = FLAMEWALL}"]; - 63 [shape=box - ,label="HELD {_ibtHeld = FLAMETORRENT}"]; - 65 [shape=box,label=LASER]; - 69 [shape=box - ,label="HELD {_ibtHeld = SPARKGUN}"]; - 71 [shape=box - ,label="HELD {_ibtHeld = TESLAGUN}"]; - 73 [shape=box - ,label="HELD {_ibtHeld = BLINKERUNSAFE}"]; - 74 [shape=box - ,label="HELD {_ibtHeld = BLINKER}"]; - 77 [shape=box - ,label="EQUIP {_ibtEquip = MAGSHIELD MagnetRepulse}"]; - 80 [shape=box - ,label="EQUIP {_ibtEquip = POWERLEGS}"]; - 86 [shape=box - ,label="HELD {_ibtHeld = FLATSHIELD}"]; - 96 [shape=box - ,label="DETECTOR {_ibtDetector = ITEMDETECTOR}"]; - 99 [shape=box - ,label="DETECTOR {_ibtDetector = WALLDETECTOR}"]; - 101 [shape=box - ,label="DETECTOR {_ibtDetector = CREATUREDETECTOR}"]; - 103 [shape=box - ,label="HELD {_ibtHeld = TORCH}"]; - 104 [shape=box - ,label="AMMOMAG {_ibtAmmoMag = BATTERY}"]; - 107 [shape=box - ,label="EQUIP {_ibtEquip = HEADLAMP}"]; - 108 [shape=box - ,label="EQUIP {_ibtEquip = HAT}"]; - 110 [shape=box - ,label="HELD {_ibtHeld = BANGSTICK {_xNum = 2}}"]; - } - subgraph 2 { - 0 [shape=point]; - 4 [shape=point]; - 8 [shape=point]; - 12 [shape=point]; - 14 [shape=point]; - 16 [shape=point]; - 19 [shape=point]; - 21 [shape=point]; - 24 [shape=point]; - 26 [shape=point]; - 28 [shape=point]; - 30 [shape=point]; - 32 [shape=point]; - 34 [shape=point]; - 36 [shape=point]; - 39 [shape=point]; - 42 [shape=point]; - 43 [shape=point]; - 45 [shape=point]; - 48 [shape=point]; - 50 [shape=point]; - 52 [shape=point]; - 56 [shape=point]; - 58 [shape=point]; - 60 [shape=point]; - 62 [shape=point]; - 64 [shape=point]; - 68 [shape=point]; - 70 [shape=point]; - 72 [shape=point]; - 76 [shape=point]; - 79 [shape=point]; - 82 [shape=point]; - 83 [shape=point]; - 84 [shape=point]; - 85 [shape=point]; - 87 [shape=point]; - 89 [shape=point]; - 92 [shape=point]; - 95 [shape=point]; - 98 [shape=point]; - 100 [shape=point]; - 102 [shape=point]; - 106 [shape=point]; - 109 [shape=point]; - 111 [shape=point]; - 113 [shape=point]; - 115 [shape=point]; - 117 [shape=point]; - } - 0 -> 1 [xlabel="",tailport=e]; - 4 -> 5 [xlabel="",tailport=e]; - 8 -> 9 [xlabel="",tailport=e]; - 9 -> 12 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 9 -> 28 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 9 -> 30 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 9 -> 30 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 9 -> 30 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 9 -> 109 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 9 -> 113 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 9 -> 115 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 12 -> 13 [xlabel="",tailport=e]; - 13 -> 14 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 14 -> 15 [xlabel="",tailport=e]; - 15 -> 16 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 15 -> 19 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 16 -> 17 [xlabel="",tailport=e]; - 19 -> 20 [xlabel="",tailport=e]; - 21 -> 22 [xlabel="",tailport=e]; - 22 -> 24 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 24 -> 25 [xlabel="",tailport=e]; - 25 -> 26 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 26 -> 27 [xlabel="",tailport=e]; - 27 -> 117 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 28 -> 29 [xlabel="",tailport=e]; - 29 -> 32 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 29 -> 34 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 29 -> 42 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 30 -> 31 [xlabel="",tailport=e]; - 31 -> 36 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 31 -> 113 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 32 -> 33 [xlabel="",tailport=e]; - 34 -> 35 [xlabel="",tailport=e]; - 36 -> 37 [xlabel="",tailport=e]; - 37 -> 115 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 39 -> 40 [xlabel="",tailport=e]; - 41 -> 39 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 41 -> 43 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 42 -> 41 [xlabel="",tailport=e]; - 43 -> 44 [xlabel="",tailport=e]; - 45 -> 46 [xlabel="",tailport=e]; - 46 -> 48 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 48 -> 49 [xlabel="",tailport=e]; - 49 -> 50 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 52 -> 53 [xlabel="",tailport=e]; - 53 -> 56 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 53 -> 58 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 56 -> 57 [xlabel="",tailport=e]; - 58 -> 59 [xlabel="",tailport=e]; - 59 -> 60 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 59 -> 62 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 60 -> 61 [xlabel="",tailport=e]; - 62 -> 63 [xlabel="",tailport=e]; - 64 -> 65 [xlabel="",tailport=e]; - 68 -> 69 [xlabel="",tailport=e]; - 69 -> 70 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 70 -> 71 [xlabel="",tailport=e]; - 72 -> 73 [xlabel="",tailport=e]; - 74 -> 72 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 76 -> 77 [xlabel="",tailport=e]; - 79 -> 80 [xlabel="",tailport=e]; - 85 -> 86 [xlabel="",tailport=e]; - 95 -> 96 [xlabel="",tailport=e]; - 98 -> 99 [xlabel="",tailport=e]; - 100 -> 101 [xlabel="" - ,tailport=e]; - 102 -> 103 [xlabel="" - ,tailport=e]; - 103 -> 106 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 104 -> 102 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 106 -> 107 [xlabel="" - ,tailport=e]; - 108 -> 106 [xlabel=1 - ,arrowhead=onone - ,headport=w]; - 109 -> 110 [xlabel="" - ,tailport=e]; - 110 -> 111 [xlabel=1 - ,arrowhead=onone - ,headport=w]; -} \ No newline at end of file diff --git a/src/Dodge/LevelGen.hs b/src/Dodge/LevelGen.hs index 772f1eace..ec817c8b1 100644 --- a/src/Dodge/LevelGen.hs +++ b/src/Dodge/LevelGen.hs @@ -39,7 +39,9 @@ postGenerationProcessing _ gw = do return $ foldl' assignPushDoors w (w ^. cWorld . lWorld . doors) generateGraphs :: IO () -generateGraphs = TIO.writeFile "graph/itemCombinations.gv" combinationsDotGraph +generateGraphs = do + createDirectoryIfMissing True "generated/graph" + TIO.writeFile "generaged/graph/itemCombinations.gv" combinationsDotGraph assignPushDoors :: World -> Door -> World assignPushDoors w dr = case dr ^?! drPushedBy of