From a1b0b50b571da07bebc55e1da66d5ee64a3d5636 Mon Sep 17 00:00:00 2001 From: nek0 Date: Tue, 20 Dec 2016 06:28:18 +0100 Subject: [PATCH] update particles after new ones come --- examples/example03.hs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/examples/example03.hs b/examples/example03.hs index 2a4f49a..3832d41 100644 --- a/examples/example03.hs +++ b/examples/example03.hs @@ -98,8 +98,6 @@ update sec = do ud <- getAffection -- let newPart = updateParticles sec partUpd $ particles ud -- putAffection $ ud { particles = newPart } - nps <- updateParticleSystem (partsys ud) sec partUpd partDraw - putAffection $ ud { partsys = nps } traceM $ (show $ 1 / sec) ++ " FPS" ev <- liftIO $ SDL.pollEvents mapM_ (\e -> @@ -111,8 +109,8 @@ update sec = do vx <- liftIO $ randomRIO (-20, 20) vy <- liftIO $ randomRIO (-20, 20) life <- liftIO $ randomRIO (1, 5) - traceM $ "position is: " ++ show x ++ " " ++ show y - traceM $ "velocity is: " ++ show vx ++ " " ++ show vy + -- traceM $ "position is: " ++ show x ++ " " ++ show y + -- traceM $ "velocity is: " ++ show vx ++ " " ++ show vy putAffection $ ud { coordinates = Just (fromIntegral x, fromIntegral y) , partsys = (partsys ud) @@ -135,6 +133,9 @@ update sec = do _ -> return () ) ev + ud2 <- getAffection + nps <- updateParticleSystem (partsys ud2) sec partUpd partDraw + putAffection $ ud2 { partsys = nps } clean :: UserData -> IO () clean _ = return ()