Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "LevelOneScene.h"
- #include "LevelSelectScene.h"
- #include "MainScene.h"
- #include <iostream>
- #include <sstream>
- #include <cmath>
- using namespace cocos2d;
- using namespace std;
- int _tags[5] = {0,0,0,0,0};
- int _times[5] = {0,3,6,9,12};
- int arrayLength = 5;
- int currentIndex;
- float _time;
- bool LevelOneScene::init()
- {
- if(CCScene::init())
- {
- this->_layer = LevelOneLayer::create();
- this->_layer->retain();
- this->addChild(_layer);
- return true;
- }
- else
- {
- return false;
- }
- }
- LevelOneScene::~LevelOneScene()
- {
- if(_layer)
- {
- _layer->release();
- _layer = NULL;
- }
- }
- LevelOneLayer::LevelOneLayer()
- :_obstaclesOnScreen(NULL)
- {
- }
- LevelOneLayer::~LevelOneLayer()
- {
- }
- bool LevelOneLayer::init()
- {
- if(CCLayerColor::initWithColor(ccc4(255,255,255,255)))
- {
- CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
- CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin();
- CCSprite *player = CCSprite::create("stickGuy.png", CCRectMake(0,0,50,100));
- player->setPosition(ccp(origin.x + (visibleSize.width/2) - (player->getContentSize().width/2),
- origin.y + (player->getContentSize().height/2)));
- this->addChild(player);
- _time = 0;
- currentIndex = 0;
- this->setTouchEnabled(true);
- this->schedule(schedule_selector(LevelOneLayer::updateGame));
- return true;
- }
- else
- {
- return false;
- }
- }
- void LevelOneLayer::ccTouchesEnded(CCSet *touches, CCEvent *event)
- {
- LevelSelectScene *levelSelectScene = LevelSelectScene::create();
- CCDirector::sharedDirector()->replaceScene(levelSelectScene);
- }
- void LevelOneLayer::spriteMoveFinished(CCNode *sender)
- {
- CCSprite *sprite = (CCSprite*) sender;
- this->removeChild(sprite, true);
- _obstaclesOnScreen->removeObject(sprite);
- }
- void LevelOneLayer::updateGame(float dt)
- {
- _time += dt;
- int itime = (int) floor(_time);
- int inc = 0;
- CCSprite *obstacle;
- bool obstacleSet = false;
- for(int i = 0; i < arrayLength; i++)
- {
- if(itime == _times[i])
- {
- if(_tags[i] == 0)
- {
- obstacle = CCSprite::create("stickGuy.png", CCRectMake(0,0,50,100));
- }
- obstacleSet = true;
- }
- }
- if(obstacleSet)
- {
- CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
- CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin();
- int Y = origin.y + (visibleSize.height/2);
- int X = origin.x + visibleSize.width + obstacle->getContentSize().width/2;
- obstacle->setPosition(ccp(X, Y));
- CCFiniteTimeAction *actionMove = CCMoveTo::create(1000.0, ccp(0 - obstacle->getContentSize().width/2, Y));
- CCFiniteTimeAction *actionMoveDone = CCCallFuncN::create(this, callfuncN_selector(LevelOneLayer::spriteMoveFinished));
- this->addChild(obstacle);
- obstacle->runAction(CCSequence::create(actionMove, actionMoveDone, NULL));
- obstacle->setTag(_tags[currentIndex]);
- _obstaclesOnScreen->addObject(obstacle);
- //currentIndex++;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement