summaryrefslogtreecommitdiffstats
path: root/examples/declarative/toys/tvtennis/tvtennis.qml
diff options
context:
space:
mode:
Diffstat (limited to 'examples/declarative/toys/tvtennis/tvtennis.qml')
-rw-r--r--examples/declarative/toys/tvtennis/tvtennis.qml24
1 files changed, 11 insertions, 13 deletions
diff --git a/examples/declarative/toys/tvtennis/tvtennis.qml b/examples/declarative/toys/tvtennis/tvtennis.qml
index 726c649..2e144ed 100644
--- a/examples/declarative/toys/tvtennis/tvtennis.qml
+++ b/examples/declarative/toys/tvtennis/tvtennis.qml
@@ -50,7 +50,6 @@ Rectangle {
id: ball
// Add a property for the target y coordinate
- property int targetY : page.height - 10
property variant direction : "right"
x: 20; width: 20; height: 20; z: 1
@@ -65,15 +64,18 @@ Rectangle {
PropertyAction { target: ball; property: "direction"; value: "right" }
}
- // Make y follow the target y coordinate, with a velocity of 200
- SpringFollow on y { to: ball.targetY; velocity: 200 }
+ // Make y move with a velocity of 200
+ Behavior on y { SpringAnimation{ velocity: 200; }
+ }
+
+ Component.onCompleted: y = page.height-10; // start the ball motion
// Detect the ball hitting the top or bottom of the view and bounce it
onYChanged: {
if (y <= 0) {
- targetY = page.height - 20;
+ y = page.height - 20;
} else if (y >= page.height - 20) {
- targetY = 0;
+ y = 0;
}
}
}
@@ -84,19 +86,15 @@ Rectangle {
id: leftBat
color: "Lime"
x: 2; width: 20; height: 90
- SpringFollow on y {
- to: ball.y - 45; velocity: 300
- enabled: ball.direction == 'left'
- }
+ y: ball.direction == 'left' ? ball.y - 45 : page.height/2 -45;
+ Behavior on y { SpringAnimation{ spring: 1; damping: .1; } }
}
Rectangle {
id: rightBat
color: "Lime"
x: page.width - 22; width: 20; height: 90
- SpringFollow on y {
- to: ball.y-45; velocity: 300
- enabled: ball.direction == 'right'
- }
+ y: ball.direction == 'right' ? ball.y - 45 : page.height/2 -45;
+ Behavior on y { SpringAnimation{ spring: 1; damping: .1; } }
}
// The rest, to make it look realistic, if neither ever scores...