今天我开始仿照书上的例子,写一个类似于天天酷跑的游戏,屏幕无线滚动,搞得好像主角在动一样,主角具有跳跃的功能,然后有金币可以吃,暂时能想到的就这么多,更多的功能在以后完善吧。
首先我要实现最开始的样子,主角要有,背景要有....
那么我就先实现这两个东西。
考虑到以后的金币和主角都是精灵,而且有很多一样的功能,干脆写一个基类,就叫Entity,我在这个类的H文件中声明了构造以及析构函数,绑定和获取精灵函数,声明一个m_sprite。
#ifndef _Entity_H #define _Entity_H #include "cocos2d.h" USING_NS_CC;//这个后面要加分号 class Entity:CCNode { Entity(); ~Entity(); CCSprite* m_sprite; void bandSprite(CCSprite* sprite); CCSprite* getSprite(); } #endif当然USING_NS_CC这个宏定义的意义是用cocos2d的名字空间, 宏后面要加分号的,要么会飘红。
然后我开始写cpp文件,由于是基类,在构造里面上来就给m_sprite一个NULL;具体赋什么值看子类喽。析构先不写。绑定函数就是把传进来的值赋给m_sprite,然后添加到图层,get函数就是直接返回m_sprite就行。get函数之前要加上Entity::,要么就识别不出基类中的精灵了。注意写函数之前要写名字空间。
#include "Entity.h" Entity::Entity() { m_sprite=NULL; } Entity::~Entity() { } void Entity::bandSprite(CCSprite* sprite) { this->m_sprite=sprite; this->addChild(m_sprite); } CCSprite* Entity::getSprite() { return m_sprite; }好困啊,明天写主角继承这个基类,然后显示到画布上,第一步就完成了。...