Learn what Felgo offers to help your business succeed. Start your free evaluation today! Felgo for Your Business

Durdles - 2-Player Action Game

 import QtQuick 2.0
 import Felgo 4.0
 import "../.."

 // the shield powerUp protects the player for a certain amount of time
 EntityBase {
   id: powShield
   entityType: "powShield"
   width: 25
   height: 25

   // count entities on the field
   onEntityCreated: GameInfo.powerUpCount+=1

   AnimatedImage {
     id: powShieldImage
     width: parent.width
     height: parent.height
     source: Qt.resolvedUrl("../../../assets/img/PUShield.gif")
     anchors.centerIn: parent
     playing: true
   }

   BoxCollider {
     id: boxCollider
     anchors.fill: powShieldImage
     anchors.centerIn: parent
     sensor:true

     fixture.onBeginContact: (other, contactNormal) => {
       // the powerUp collides with the child collider of the player
       var collidedEntity = other.getBody().target;

       // if one of the players gets in contact with the shield powerUp, the shield will activate and the timer resets
       // the powerUp itself gets destroyed and removed from the counter
       if (collidedEntity.isOfType("tankRed")){
         collidedEntity.plingSound.play();
         collidedEntity.parent.activateShield = true
         collidedEntity.parent.activeShieldCounter = 0
         powShield.destroy()
         GameInfo.powerUpCount -= 1
       } else if (collidedEntity.isOfType("tankBlue")){
         collidedEntity.plingSound.play();
         collidedEntity.parent.activateShield = true
         collidedEntity.parent.activeShieldCounter = 0
         powShield.destroy()
         GameInfo.powerUpCount -= 1
       }
Qt_Technology_Partner_RGB_475 Qt_Service_Partner_RGB_475_padded