import Control.Monad import Data.Vect import Data.Danmaku import MonadicShooter.Bullet barrage0 :: DanmakuT RealBullet (Reader Vec2) () barrage0 = forever $ do playerPos <- lift ask let a = angle2 (playerPos &- center) forM_ [0..39] $ \i -> fire $ RealBullet (sinCos (i / 40 * 2 * pi + a) &* 3) center 0 wait 13 where center = Vec2 240 120