Android
文章平均质量分 83
尹成
尹成微信18510341407,助理微信18514203048
展开
-
cocos2d-x游戏开发系列教程-坦克大战游戏启动界面的编写
用前面介绍的方法,创建一个cocos2d-x项目,可以看到新项目内容如下图:我看查看 HelloWorldScene.cpp中的函数bool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { retu原创 2013-12-15 11:53:01 · 5960 阅读 · 4 评论 -
CC++初学者编程教程(15) 基于cocos2dx的安卓打包环境
1首先安装python 2 单击next 3 选择默认路径,单击next 4选择完全安装,单击next 5单击next开始安装 6 安装完成 7 设置环境变量 8 添加python的路径到path 9 解压缩cocos2dx2.2.1 10正在解压缩 11 复制python.bat 12到这个文件夹,也就是解压原创 2014-07-07 11:03:50 · 2367 阅读 · 0 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之子弹的碰撞检测处理
在上篇我们加上了简单的坦克之间的碰撞检测,这篇我们继续加上子弹之间,子弹与坦克之间的碰撞检测,对于上一篇碰撞处理不太完美的地方我们继续改进。1.子弹之间的碰撞 //玩家子弹和敌方子弹之间的碰撞 CCObject* pObj; CCARRAY_FOREACH(mEnemyTanks, pObj) { Bullet* enemyBullet = ((Tank*)pObj)->getBulle原创 2013-12-27 23:36:07 · 10034 阅读 · 0 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之所有坦克之间的碰撞检测
上篇我们完成了简单的AI编写,但是各个坦克移动时之间是可以重合的,这节课我们来完成坦克之间的碰撞检测,还是在上篇的EnemyAI中完成。1.我先现在坦克类Tank中添加两个成员变量: CC_SYNTHESIZE(CCRect, mMovedRect, MovedRect); CC_SYNTHESIZE(bool, IsBlock, Block);mMovedRect是移动后的位置,目的是保存移动原创 2013-12-26 17:36:21 · 11884 阅读 · 1 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之敌方坦克AI的编写
在上篇我们完成了子弹和地图碰撞的检测,在这篇我们将完成敌方坦克AI的编写。具体思路是屏幕中保持有四个敌方坦克,然后坦克随机方向运动,并且子弹消失后1秒发射一次1.我们新建一个敌方坦克的AI类来控制地方坦克AI行为:static const char* enemyTankType[] = { "normalU.png", "speedU.png", "armor1U.png"};class原创 2013-12-24 19:55:18 · 11565 阅读 · 0 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之坦克和地图碰撞的检测下
上篇我们完成了地图的信息获取和碰撞检测,这篇我们整合到程序中。在这之前我们改造一下Tank类,使它更加模块化,共容易理解:1.改造后的Tank类声明如下:class Tank : public CCSprite{public : Tank(); ~Tank(); static Tank* createTankWithTankType(const char* tankTypeName,原创 2013-12-23 11:38:51 · 8765 阅读 · 5 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之子弹和地图碰撞
上篇文章实现了坦克与地图碰撞的检测,这篇我们继续完成子弹和地图的碰撞检测。1.先设计一个子弹类Bullet,如下所示:class Bullet : public CCSprite{public: Bullet(); ~Bullet(); static Bullet* createBulletWithTank(Tank* tank); void initBulletWithTank(原创 2013-12-24 10:08:56 · 9363 阅读 · 0 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之坦克和地图碰撞的检测上
在上篇我们可以控制坦克在地图上任意行走了,但是实际游戏中遇到墙就应该是无法走动的,这节课我们继续完善程序,让他能在地图检测到墙壁,而无法通过。1.我们新建一个TileMapInfo类,来获取地图信息。class TileMapInfo{public: bool collisionTest(CCRect rect); static TileMapInfo* createMapInfoWi原创 2013-12-23 11:01:39 · 10697 阅读 · 4 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之虚拟手柄控制坦克移动
上篇显示了控制手柄,但是还不能用来控制坦克,这篇将会讲手柄和坦克的移动结合起来。1.先在CityScene场景中实现场景的虚函数virtual void onEnter();onEnter在进入场景后将会被调用,我们在onEnter中设置一个定时器,游戏每一帧都调用次,这样我们可以在每帧中检测手柄按钮是否被按下,然后控制坦克的移动,onEnter和update的函数实现如下:void CitySc原创 2013-12-21 16:53:49 · 9627 阅读 · 4 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之虚拟手柄的显示
上篇文章我们有了坦克,但是没有手柄,无法控制坦克。1.这篇我们编写虚拟手柄来控制坦克。头文件大致内容如下:#define RES_PADDLE_LEFT "paddle/left.png"#define RES_PADDLE_LEFT_PRESS "paddle/left_press.png"#define RES_PADDLE_RIGHT "paddle/right.png"#def原创 2013-12-21 15:50:58 · 4643 阅读 · 5 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏之坦克的显示
1.先定义坦克的一些属性class Tank : public CCSprite{public : Tank(); ~Tank(); static Tank* createTankWithTankType(const char* tankTypeName);};上面定义很简单,我们暂时只用写一个函数createTankWithTankType,2.函数功能就是从坦克类型创建坦克精灵,原创 2013-12-21 12:03:48 · 5588 阅读 · 4 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏加载地图的编写
上节课写了关卡选择场景,那么接下来写关卡内容,先写最基本的地图的加载我们新建一个场景类,如下所示:class CityScene : public cocos2d::CCLayer{public: CityScene(); ~CityScene(); virtual bool init(); static cocos2d::CCScene *scene(); static coc原创 2013-12-19 17:27:33 · 3702 阅读 · 0 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏关卡选择场景的编写下
上篇文章写了Paddle类来处理精灵的点击、触摸事件,现在我们在Paddle的基础上写一个MyPaddle类,来处理上一关、下一关、开始游戏按钮的点击事件。1.类声明如下:class MyPaddle : public Paddle{ CC_SYNTHESIZE(enum_evt, m_evttyp, evttyp); CC_SYNTHESIZE(ChoiceScene*, m_pSenc原创 2013-12-17 00:41:03 · 4339 阅读 · 3 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏关卡选择场景的编写中
在上节课我们能够显示关卡选择界面了,但是点击按钮没有任何反应,那么我们这篇文章将会介绍如何响应点击触摸等事件。要使精灵能够相应触摸事件,我们必须将我们的类继承于CCSprite和CCTargetedTouchDelegate,那么我们还需要实现CCTargetedTouchDelegate中的三个虚函数 virtual bool ccTouchBegan(CCTouch* touch, CC原创 2013-12-16 17:26:49 · 3907 阅读 · 1 评论 -
cocos2d-x游戏开发系列教程-坦克大战游戏关卡选择场景的编写上
下面我们新建一个关卡场景类代码如下:class ChoiceScene : public cocos2d::CCLayer{public : virtual bool init(); CREATE_FUNC(ChoiceScene); static cocos2d::CCScene *scene();};然后我们类似的实现scene和init函数,scene比较简单,代码如下:CCSc原创 2013-12-16 11:52:48 · 3680 阅读 · 6 评论 -
C语言基础课程 第三课 ADB(Android Debug Bridge)的使用
C语言基础课程 第三课 ADB(Android Debug Bridge)的使用 由于前面已经发布过Linux的博客了 基础班将Linux基础命令就不单独发表博客了,本节课主要就是利用adb连接手机进行一个Linux基本命令的复习。而且熟悉手机的底层运作,不用界面操作照样也能安装软件 卸载软件与pc传数据 目 录1 将android设备通过USB连接到P原创 2014-09-26 23:09:44 · 3213 阅读 · 0 评论