|
@@ -154,7 +154,7 @@ bool GameScene::onContactBegin(PhysicsContact& contact) {
|
|
|
auto nodeA = contact.getShapeA()->getBody()->getNode();
|
|
|
auto nodeB = contact.getShapeB()->getBody()->getNode();
|
|
|
|
|
|
- if (nodeA && nodeB && nodeA->getTag() != nodeB->getTag() && !this->over) {
|
|
|
+ if (nodeA && nodeB && nodeA->getTag() != nodeB->getTag()) {
|
|
|
|
|
|
|
|
|
if (nodeB->getTag() > nodeA->getTag()) {
|
|
@@ -178,36 +178,36 @@ bool GameScene::onContactBegin(PhysicsContact& contact) {
|
|
|
} else if (nodeB->getTag() == BALL_TAG && nodeA->getTag() == CORE_TAG) {
|
|
|
ball_core(nodeA, nodeB);
|
|
|
} else if (nodeB->getTag() == SAVE_TAG && nodeA->getTag() == RACKET_TAG) {
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- Size visibleSize = Director::getInstance()->getVisibleSize();
|
|
|
-
|
|
|
- UserDefault *userdata = UserDefault::getInstance();
|
|
|
- userdata->setIntegerForKey("level", this->level);
|
|
|
- userdata->setDoubleForKey("time", (double) time(NULL));
|
|
|
- userdata->flush();
|
|
|
+ if (!over) {
|
|
|
+ Size visibleSize = Director::getInstance()->getVisibleSize();
|
|
|
+
|
|
|
+ UserDefault *userdata = UserDefault::getInstance();
|
|
|
+ userdata->setIntegerForKey("level", this->level);
|
|
|
+ userdata->setDoubleForKey("time", (double) time(NULL));
|
|
|
+ userdata->flush();
|
|
|
+ auto text = Label::createWithTTF("Level Saved!", "fonts/Marker Felt.ttf", 40);
|
|
|
+ text->setPosition(visibleSize.width/2, visibleSize.height/2);
|
|
|
+ this->addChild(text);
|
|
|
+ text->runAction(FadeOut::create(3));
|
|
|
+ }
|
|
|
nodeB->removeFromParentAndCleanup(true);
|
|
|
- auto text = Label::createWithTTF("Level Saved!", "fonts/Marker Felt.ttf", 40);
|
|
|
- text->setPosition(visibleSize.width/2, visibleSize.height/2);
|
|
|
- this->addChild(text);
|
|
|
- text->runAction(FadeOut::create(3));
|
|
|
|
|
|
} else if (nodeB->getTag() == THREE_BALLS_TAG && nodeA->getTag() == RACKET_TAG) {
|
|
|
-
|
|
|
- Size visibleSize = Director::getInstance()->getVisibleSize();
|
|
|
-
|
|
|
- auto text = Label::createWithTTF("Triple Balls!", "fonts/Marker Felt.ttf", 40);
|
|
|
- text->setPosition(visibleSize.width/2, visibleSize.height/2 + 2);
|
|
|
- this->addChild(text);
|
|
|
- text->runAction(FadeOut::create(3));
|
|
|
+ if (!over) {
|
|
|
+ Size visibleSize = Director::getInstance()->getVisibleSize();
|
|
|
+
|
|
|
+ auto text = Label::createWithTTF("Triple Balls!", "fonts/Marker Felt.ttf", 40);
|
|
|
+ text->setPosition(visibleSize.width/2, visibleSize.height/2 + 2);
|
|
|
+ this->addChild(text);
|
|
|
+ text->runAction(FadeOut::create(3));
|
|
|
|
|
|
-
|
|
|
- for (int i = ball_count; i < 3; i++, ball_count++) {
|
|
|
- auto ball = Ball::create();
|
|
|
- ball->setPosition(nodeB->getPositionX(), RAQUETE_ALTURA+BALL_SIZE);
|
|
|
- ball->throwBall();
|
|
|
- this->addChild(ball, 21);
|
|
|
+
|
|
|
+ for (int i = ball_count; i < 3; i++, ball_count++) {
|
|
|
+ auto ball = Ball::create();
|
|
|
+ ball->setPosition(nodeB->getPositionX(), RAQUETE_ALTURA+BALL_SIZE);
|
|
|
+ ball->throwBall();
|
|
|
+ this->addChild(ball, 21);
|
|
|
+ }
|
|
|
}
|
|
|
nodeB->removeFromParentAndCleanup(true);
|
|
|
|
|
@@ -217,8 +217,6 @@ bool GameScene::onContactBegin(PhysicsContact& contact) {
|
|
|
nodeB->removeFromParentAndCleanup(true);
|
|
|
}
|
|
|
|
|
|
- } else {
|
|
|
- nodeB->removeFromParentAndCleanup(true);
|
|
|
}
|
|
|
return true;
|
|
|
}
|