12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- /*
- * Copyright (c) 2011 Nokia Corporation.
- */
- import Qt 4.7
- import Qt.labs.particles 1.0
- Item {
- id: block
- property bool dying: false
- property bool spawned: false
- property int type: 0
- Behavior on x {
- enabled: spawned;
- SpringAnimation { spring: 2; damping: 0.2 }
- }
- Behavior on y {
- SpringAnimation { spring: 2; damping: 0.2 }
- }
- Image {
- id: img
- source: {
- if(type == 0){
- "pics/redStone.png";
- } else if(type == 1) {
- "pics/blueStone.png";
- } else {
- "pics/greenStone.png";
- }
- }
- opacity: 0
- Behavior on opacity { NumberAnimation { duration: 200 } }
- anchors.fill: parent
- }
- Particles {
- id: particles
- width: 1; height: 1
- anchors.centerIn: parent
- emissionRate: 0
- lifeSpan: 700; lifeSpanDeviation: 600
- angle: 0; angleDeviation: 360;
- velocity: 100; velocityDeviation: 30
- source: {
- if(type == 0){
- "pics/redStar.png";
- } else if (type == 1) {
- "pics/blueStar.png";
- } else {
- "pics/greenStar.png";
- }
- }
- }
- states: [
- State {
- name: "AliveState"; when: spawned == true && dying == false
- PropertyChanges { target: img; opacity: 1 }
- },
- State {
- name: "DeathState"; when: dying == true
- StateChangeScript { script: particles.burst(50); }
- PropertyChanges { target: img; opacity: 0 }
- StateChangeScript { script: block.destroy(1000); }
- }
- ]
- }
|