axmol/samples/Cpp/TestCpp/Classes/BugsTest/Bug-624.cpp

90 lines
2.4 KiB
C++
Raw Normal View History

2011-07-08 11:22:35 +08:00
//
// Bug-624
// http://code.google.com/p/cocos2d-iphone/issues/detail?id=624
//
#include "Bug-624.h"
////////////////////////////////////////////////////////
//
// Bug624Layer
//
2011-07-08 11:22:35 +08:00
////////////////////////////////////////////////////////
bool Bug624Layer::init()
{
if(BugsTestBaseLayer::init())
{
auto size = Director::getInstance()->getWinSize();
auto label = LabelTTF::create("Layer1", "Marker Felt", 36);
2011-07-08 11:22:35 +08:00
2013-07-12 14:11:55 +08:00
label->setPosition(Point(size.width/2, size.height/2));
addChild(label);
auto dispatcher = EventDispatcher::getInstance();
auto listener = EventListenerAcceleration::create(CC_CALLBACK_2(Bug624Layer::onAcceleration, this));
dispatcher->addEventListenerWithSceneGraphPriority(listener, this);
2011-07-08 11:22:35 +08:00
schedule(schedule_selector(Bug624Layer::switchLayer), 5.0f);
return true;
}
2011-07-08 11:22:35 +08:00
return false;
2011-07-08 11:22:35 +08:00
}
2012-06-08 13:55:28 +08:00
void Bug624Layer::switchLayer(float dt)
2011-07-08 11:22:35 +08:00
{
unschedule(schedule_selector(Bug624Layer::switchLayer));
2011-07-08 11:22:35 +08:00
auto scene = Scene::create();
scene->addChild(Bug624Layer2::create(), 0);
Director::getInstance()->replaceScene(TransitionFade::create(2.0f, scene, Color3B::WHITE));
2011-07-08 11:22:35 +08:00
}
void Bug624Layer::onAcceleration(Acceleration* acc, Event* event)
{
log("Layer1 accel");
2011-07-08 11:22:35 +08:00
}
////////////////////////////////////////////////////////
//
// Bug624Layer2
//
2011-07-08 11:22:35 +08:00
////////////////////////////////////////////////////////
bool Bug624Layer2::init()
{
if(BugsTestBaseLayer::init())
{
auto size = Director::getInstance()->getWinSize();
auto label = LabelTTF::create("Layer2", "Marker Felt", 36);
2011-07-08 11:22:35 +08:00
2013-07-12 14:11:55 +08:00
label->setPosition(Point(size.width/2, size.height/2));
2011-07-08 11:22:35 +08:00
addChild(label);
auto dispatcher = EventDispatcher::getInstance();
auto listener = EventListenerAcceleration::create(CC_CALLBACK_2(Bug624Layer2::onAcceleration, this));
dispatcher->addEventListenerWithSceneGraphPriority(listener, this);
2011-07-08 11:22:35 +08:00
schedule(schedule_selector(Bug624Layer2::switchLayer), 5.0f);
return true;
}
return false;
}
2012-06-08 13:55:28 +08:00
void Bug624Layer2::switchLayer(float dt)
2011-07-08 11:22:35 +08:00
{
unschedule(schedule_selector(Bug624Layer::switchLayer));
auto scene = Scene::create();
scene->addChild(Bug624Layer::create(), 0);
Director::getInstance()->replaceScene(TransitionFade::create(2.0f, scene, Color3B::RED));
2011-07-08 11:22:35 +08:00
}
void Bug624Layer2::onAcceleration(Acceleration* acc, Event* event)
{
log("Layer2 accel");
2011-07-08 11:22:35 +08:00
}