axmol/tests/test-cpp/Classes/BugsTest/Bug-1159.cpp

69 lines
2.1 KiB
C++
Raw Normal View History

2011-07-08 11:22:35 +08:00
//
// Bug-1159.m
// Z-Fighting in iPad 2
// http://code.google.com/p/cocos2d-iphone/issues/detail?id=1159
//
// Created by Greg Woods on 4/5/11.
// Copyright 2011 Westlake Design. All rights reserved.
//
#include "Bug-1159.h"
Scene* Bug1159Layer::scene()
2011-07-08 11:22:35 +08:00
{
auto scene = Scene::create();
auto layer = Bug1159Layer::create();
scene->addChild(layer);
2011-07-08 11:22:35 +08:00
return scene;
2011-07-08 11:22:35 +08:00
}
bool Bug1159Layer::init()
{
if (BugsTestBaseLayer::init())
{
Director::getInstance()->setDepthTest(true);
auto s = Director::getInstance()->getWinSize();
2011-07-08 11:22:35 +08:00
auto background = LayerColor::create(Color4B(255, 0, 255, 255));
addChild(background);
2011-07-08 11:22:35 +08:00
auto sprite_a = LayerColor::create(Color4B(255, 0, 0, 255), 700, 700);
2013-07-12 14:11:55 +08:00
sprite_a->setAnchorPoint(Point(0.5f, 0.5f));
sprite_a->ignoreAnchorPointForPosition(false);
2013-07-12 14:11:55 +08:00
sprite_a->setPosition(Point(0.0f, s.height/2));
addChild(sprite_a);
2011-07-08 11:22:35 +08:00
sprite_a->runAction(RepeatForever::create(Sequence::create(
2013-07-12 14:11:55 +08:00
MoveTo::create(1.0f, Point(1024.0f, 384.0f)),
MoveTo::create(1.0f, Point(0.0f, 384.0f)),
NULL)));
2011-07-08 11:22:35 +08:00
auto sprite_b = LayerColor::create(Color4B(0, 0, 255, 255), 400, 400);
2013-07-12 14:11:55 +08:00
sprite_b->setAnchorPoint(Point(0.5f, 0.5f));
sprite_b->ignoreAnchorPointForPosition(false);
2013-07-12 14:11:55 +08:00
sprite_b->setPosition(Point(s.width/2, s.height/2));
addChild(sprite_b);
2011-07-08 11:22:35 +08:00
auto label = MenuItemLabel::create(LabelTTF::create("Flip Me", "Helvetica", 24), CC_CALLBACK_1(Bug1159Layer::callBack, this) );
auto menu = Menu::create(label, NULL);
2013-07-12 14:11:55 +08:00
menu->setPosition(Point(s.width - 200.0f, 50.0f));
addChild(menu);
2011-07-08 11:22:35 +08:00
return true;
}
2011-07-08 11:22:35 +08:00
return false;
2011-07-08 11:22:35 +08:00
}
void Bug1159Layer::callBack(Ref* sender)
2011-07-08 11:22:35 +08:00
{
Director::getInstance()->replaceScene(TransitionPageTurn::create(1.0f, Bug1159Layer::scene(), false));
2011-07-08 11:22:35 +08:00
}
void Bug1159Layer::onExit()
{
Director::getInstance()->setDepthTest(false);
BugsTestBaseLayer::onExit();
}