aboutsummaryrefslogtreecommitdiff
path: root/Demos/Pong/Pong.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Demos/Pong/Pong.hs')
-rw-r--r--Demos/Pong/Pong.hs17
1 files changed, 9 insertions, 8 deletions
diff --git a/Demos/Pong/Pong.hs b/Demos/Pong/Pong.hs
index 2bd9df1..e834c5d 100644
--- a/Demos/Pong/Pong.hs
+++ b/Demos/Pong/Pong.hs
@@ -77,14 +77,6 @@ instance Spatial GameObject Vector2 Angle Transform2 where
77 transform = basis 77 transform = basis
78 78
79 79
80stepWorld :: Elapsed -> Dt -> [GameEvent] -> [GameObject] -> [GameObject]
81stepWorld elapsed dt evts gos = map (update elapsed dt evts gos) gos
82
83update :: Elapsed -> Dt -> [GameEvent] -> [GameObject] -> GameObject -> GameObject
84update elapsed dt evts gos go =
85 let (go', s') = runStep (gostep go) elapsed dt gos evts go
86 in go' {gostep = s'}
87
88ballBox, padBox :: AABB2 80ballBox, padBox :: AABB2
89ballBox = AABB2 (vec2 (-s) (-s)) (vec2 s s) where s = ballSize 81ballBox = AABB2 (vec2 (-s) (-s)) (vec2 s s) where s = ballSize
90padBox = AABB2 (-padSize) padSize 82padBox = AABB2 (-padSize) padSize
@@ -96,6 +88,15 @@ newWorld =
96 ] 88 ]
97 where makeAt = newTransform2 unitx2 unity2 89 where makeAt = newTransform2 unitx2 unity2
98 90
91
92stepWorld :: Elapsed -> Dt -> [GameEvent] -> [GameObject] -> [GameObject]
93stepWorld elapsed dt evts gos = map (update elapsed dt evts gos) gos
94
95update :: Elapsed -> Dt -> [GameEvent] -> [GameObject] -> GameObject -> GameObject
96update elapsed dt evts gos go =
97 let (go', s') = runStep (gostep go) elapsed dt gos evts go
98 in go' {gostep = s'}
99
99-- Ball steppers 100-- Ball steppers
100 101
101stepBall vel = collideBall vel .> moveBall 102stepBall vel = collideBall vel .> moveBall