您的位置:首页 > 移动开发 > Cocos引擎

【cocos2d-x IOS游戏开发-城市跑酷2】python create_project

2013-12-07 13:57 549 查看
尊重开发者的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/17187011

<捕鱼达人>回顾

【cocos2d-x
IOS游戏开发-捕鱼达人1】内容介绍

上节回顾

【cocos2d-x
IOS游戏开发-城市跑酷1】跑酷游戏介绍

1、  准备工作【VS2012】

一、下载cocos2d-x

http://cocos2d-x.org/projects/cocos2d-x/wiki/Download

我们可以看到稳定的版本为2.2.1,这个版本提供了一个用python命令来建立各平台的项目,十分便利。下载,解压

二、下载python

http://www.python.org/getit/

下载,安装,然后在终端直接输入python,如果出现版本信息则安装成功。

ActivePython 2.7.5.6 (ActiveState Software Inc.) based on

Python 2.7.5 (default, Sep 16 2013, 23:11:01) [MSC v.1500 64 bit (AMD64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>>

三、建立cocos2d-x项目

进入cmd,执行以下命令

cd ~/cocos2d-x-2.2.1/tools/project-creator/
python create_project.py -project Victorian -package com.haomengzhu.game -language cpp


create_project.py要求提供3个参数(工程名:我这里是fishjoy ,包名:我这里是com. haomengzhu.game,语言:cpp | js | lua)

执行成功会显示以下信息
proj.ios        : Done!
proj.android        : Done!
proj.win32        : Done!
proj.mac        : Done!
proj.blackberry        : Done!
proj.linux        : Done!
proj.marmalade        : Done!
New project has been created in this path: ../cocos2d-x-2.2.1/projects/Victorian
Have Fun!


进入Victorian目录,你可以看到这些项目
Classes
Resources
proj.android
proj.ios
proj.mac
proj.win32
proj.blackberry
proj.linux
proj.marmalade


怎么样,全平台都给你搭好了,而且共用一个Classes文件夹,也就是说你在一个平台更新了代码,全平台都得到了更新。

四、打开VS2012工程

进入到 ..\cocos2d-x-2.2.1\projects\Victorian\proj.win32目录下,打开工程Victorian.sln。

添加文件GameLayer.cpp、GameLayer.h

游戏层的实现都在这里。

导演来了:

bool AppDelegate::applicationDidFinishLaunching()
{
// initialize director
CCDirector *pDirector = CCDirector::sharedDirector();
pDirector->setOpenGLView(CCEGLView::sharedOpenGLView());

// turn on display FPS
pDirector->setDisplayStats(true);

// set FPS. the default value is 1.0/60 if you don't call this
pDirector->setAnimationInterval(1.0 / 60);

// create a scene. it's an autorelease object
CCScene *pScene = GameLayer::scene();

// run
pDirector->runWithScene(pScene);
return true;
}


场景层实现:

// on "init" you need to initialize your instance
bool GameLayer::init()
{
bool bRet = false;
do
{
//////////////////////////////////////////////////////////////////////////
// super init first
//////////////////////////////////////////////////////////////////////////

CC_BREAK_IF(! CCLayer::init());

//获取屏幕大小
_screenSize = CCDirector::sharedDirector()->getWinSize();

//创建游戏界面
createGameScreen();

//重新开始游戏
resetGame();

//listen for touches
this->setTouchEnabled(true);

//create main loop
this->schedule(schedule_selector(GameLayer::update));

bRet = true;
} while (0);

return bRet;
}
预留接口,下节实现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐