axmol/template/xcode3/cocos2d-x_app/Classes/HelloWorldScene.cpp

87 lines
2.3 KiB
C++
Raw Normal View History

2011-01-15 15:15:22 +08:00
//
// HelloWorldScene.cpp
// ___PROJECTNAME___
//
// Created by ___FULLUSERNAME___ on ___DATE___.
// Copyright ___ORGANIZATIONNAME___ ___YEAR___. All rights reserved.
//
2011-03-10 11:59:17 +08:00
2011-01-15 15:15:22 +08:00
#include "HelloWorldScene.h"
2011-03-10 11:59:17 +08:00
USING_NS_CC;
2011-01-15 15:15:22 +08:00
CCScene* HelloWorld::scene()
{
// 'scene' is an autorelease object
CCScene *scene = CCScene::node();
// 'layer' is an autorelease object
HelloWorld *layer = HelloWorld::node();
// add layer as a child to scene
scene->addChild(layer);
// return the scene
return scene;
}
// on "init" you need to initialize your instance
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
return false;
}
/////////////////////////////
// 2. add a menu item with "X" image, which is clicked to quit the program
// you may modify it.
// add a "close" icon to exit the progress. it's an autorelease object
CCMenuItemImage *pCloseItem = CCMenuItemImage::itemFromNormalImage(
"CloseNormal.png",
"CloseSelected.png",
this,
menu_selector(HelloWorld::menuCloseCallback) );
pCloseItem->setPosition( ccp(CCDirector::sharedDirector()->getWinSize().width - 20, 20) );
// create menu, it's an autorelease object
CCMenu* pMenu = CCMenu::menuWithItems(pCloseItem, NULL);
2011-03-10 11:59:17 +08:00
pMenu->setPosition( CCPointZero );
2011-01-15 15:15:22 +08:00
this->addChild(pMenu, 1);
/////////////////////////////
// 3. add your codes below...
// add a label shows "Hello World"
// create and initialize a label
2011-03-10 11:59:17 +08:00
CCLabelTTF* pLabel = CCLabelTTF::labelWithString("Hello World", "Thonburi", 34);
2011-01-15 15:15:22 +08:00
// ask director the window size
2011-03-10 11:59:17 +08:00
CCSize size = CCDirector::sharedDirector()->getWinSize();
2011-01-15 15:15:22 +08:00
// position the label on the center of the screen
pLabel->setPosition( ccp(size.width / 2, size.height - 20) );
// add the label as a child to this layer
this->addChild(pLabel, 1);
// add "HelloWorld" splash screen"
CCSprite* pSprite = CCSprite::spriteWithFile("HelloWorld.png");
// position the sprite on the center of the screen
pSprite->setPosition( ccp(size.width/2, size.height/2) );
2011-03-10 11:59:17 +08:00
// add the sprite as a child to this layer
2011-01-15 15:15:22 +08:00
this->addChild(pSprite, 0);
return true;
}
2011-03-10 11:59:17 +08:00
void HelloWorld::menuCloseCallback(CCObject* pSender)
2011-01-15 15:15:22 +08:00
{
CCDirector::sharedDirector()->end();
2011-03-10 11:59:17 +08:00
}