Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "GameScene.h"
- Scene* Game::createScene()
- {
- auto scene = Scene::create();
- auto layer = Game::create();
- scene->addChild(layer);
- return scene;
- }
- bool Game::init()
- {
- if (!Layer::init())
- {
- return false;
- }
- initData();
- initSmile();
- return true;
- }
- void Game::initData()
- {
- winSize = Director::getInstance()->getWinSize();
- auto listener = EventListenerTouchOneByOne::create();
- listener->onTouchBegan = CC_CALLBACK_2(Game::onTouchBegan, this);
- Director::getInstance()->getEventDispatcher()->addEventListenerWithFixedPriority(listener, 1);
- srand(time(NULL));
- }
- void Game::initSmile()
- {
- float x = rand() % (int)winSize.width;
- float y = rand() % (int)winSize.height;
- auto spr = Sprite::create("Pea.png");
- spr->setPosition(Point(x, y));
- spr->setTag(1);
- this->addChild(spr);
- }
- bool Game::onTouchBegan(Touch *touch, Event *unused_event)
- {
- Point location = touch->getLocation();
- auto spr = (Sprite*)this->getChildByTag(1);
- Rect rect = spr->getBoundingBox();
- if (rect.containsPoint(location)) {
- if (spr->getScale() <= 0.25) {
- this->removeChild(spr);
- }
- else {
- spr->setScale(spr->getScale() / 2);
- }
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement