cocos2dx 精灵的移动
来源:未知 责任编辑:责任编辑 发表时间:2013-12-18 11:33 点击:次
目标:想要精灵进行随机的移动。
p>
p>过程:需要一个白色的背景,所以先来修改 HelloWorld 的继承,改成继承 CCLayerColor,然后修改一下 init 方法。如下:
p>
p>[objc]
p>CCLayerColor::initWithColor(ccc4(255, 255, 255, 255))
p>
p>添加完图片资源之后就可以开始敲代码了,需要注释的地方都写在代码里了,,就直接贴代码:
p>HelloWorld.h 声明的方法:
p>
p>[objc]
p>void addTarget();
p>void spriteMoveFinished(CCNode *sender);
p>void gameLogic(cocos2d::CCTime dt);
p>
p>HelloWorld.m文件重写 init( ) 方法:
p>[objc]
p>#include "HelloWorldScene.h"
p>#include "SimpleAudioEngine.h"
p>
p>using namespace cocos2d;
p>using namespace CocosDenshion;
p>
p>CCScene* HelloWorld::scene()
p>{
p> // 'scene' is an autorelease object
p> CCScene *scene = CCScene::create();
p>
p> // 'layer' is an autorelease object
p> HelloWorld *layer = HelloWorld::create();
p>
p> // add layer as a child to scene
p> scene->addChild(layer);
p>
p> // return the scene
p> return scene;
p>}
p>
p>
p>
p>// on "init" you need to initialize your instance
p>bool HelloWorld::init()
p>{
p> //////////////////////////////
p> // 1. super init first
p> if ( CCLayerColor::initWithColor(ccc4(255, 255, 255, 255)) )
p> {
p>
p> CCSize winSize = CCDirector::sharedDirector()->getWinSize();//获取屏幕大小
p>
p> float sprite_scale = 2.0;
p> CCSprite *Player = CCSprite::create("Player.png");
p> Player->setScale(sprite_scale);
p> Player->setPosition(ccp(Player->getContentSize().width*sprite_scale/2.0, winSize.height/2.0));
p> this->addChild(Player);
p>
p> this->schedule(schedule_selector(HelloWorld::gameLogic), 1.0);
p>
p> return true;
p> }
p> else{
p> return false;
p> }
p>
p>
p>}
p>
p>void HelloWorld::gameLogic(cocos2d::CCTime dt){
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>