Add more procedural girders

This commit is contained in:
2022-03-16 18:02:17 +00:00
parent 6e05756ed3
commit 58a24c58e3
18 changed files with 150 additions and 123 deletions
+11 -21
View File
@@ -3,7 +3,6 @@ import Dodge.Data
import Dodge.LevelGen.Data
--import Dodge.PlacementSpot
import Dodge.Room.RunPast
import Dodge.Room.Tanks
import Dodge.Room.Containing
import Dodge.Room.LongDoor
--import Dodge.RoomLink
@@ -17,9 +16,7 @@ import Dodge.Room.RezBox
import Dodge.Room.Corridor
import Dodge.Room.Room
import Dodge.Room.Link
import Dodge.Room.Procedural
import Dodge.Item.Weapon.BulletGuns
import Dodge.Item.Weapon.Utility
import Dodge.Item.Weapon
import Dodge.Item.Craftable
--import Dodge.LevelGen.Data
--import Geometry.Data
@@ -33,15 +30,16 @@ import Control.Monad.State
import System.Random
--import qualified Data.IntMap.Strict as IM
minigunFakeout :: RandomGen g => State g (SubCompTree Room)
minigunFakeout = do
rcol <- rezColor
powerFakeout :: RandomGen g => State g (SubCompTree Room)
powerFakeout = do
ncor <- state $ randomR (0,2)
roomwithmini <- randomiseAllLinks $ roomRectAutoLinks 150 150
& rmPmnts .:~ plRRpt 0 (PutFlIt $ miniGunX 6)
it <- takeOne
[miniGunX 6
,launcherX 7
]
roomwithmini <- pedestalRoom it
randcors <- replicateM ncor $ (fmap PassDown . shuffleLinks) corridor
return $ ([PassDown $ rezBox rcol
,PassDown door
return $ ([PassDown door
,PassDown roomwithmini
,PassDown door
]
@@ -52,8 +50,8 @@ minigunFakeout = do
startRoom :: RandomGen g => Int -> State g (SubCompTree Room)
startRoom i = join $ uncurry takeOneWeighted $ unzip
-- [ (,) (0.5::Float) $ chainUses <$> sequence [minigunFakeout,weaponRoom]
[ (,) one rezBoxesWp
[ (,) (0.5::Float) $ chainUses <$> sequence [powerFakeout,weaponRoom]
, (,) one rezBoxesWp
, (,) one rezBoxesThenWeaponRoom
, (,) 1 rezBoxThenWeaponRoom
, (,) one rezBoxesWpCrit
@@ -106,11 +104,3 @@ startCrafts = takeOne $ map (map makeTypeCraft)
[ [PIPE,PIPE,HARDWARE]
, [TUBE,PIPE,HARDWARE]
]
startRoom' :: RandomGen g => State g (SubCompTree Room)
startRoom' = do
scrafts <- startCrafts
troom <- tanksRoom [] scrafts
thecol <- rezColor
treeFromPost [PassDown $ rezBox thecol, PassDown door] . UseAll
<$> shuffleLinks troom