tolua++简介
tolua++工具所在目录:cocos2d-x-2.2.1\tools\tolua++, 在目录下有一个README文件,打开有关于这个工具的介绍与使用说明。
工具描述: Generating the lua<-->C bindings with tolua++, tolua++用于生成lua与C之间交互的绑定文件。
通过使用该命令生成绑定文件 :tolua++.exe -L basic.lua -o LuaCocos2d.cpp Cocos2d.pkg,新生成的LuaCocos2d.cpp文件将会覆盖旧的。
LuaCococs2d.cpp文件所在路径:cocos2d-x-2.2.1\scripting\lua\cocos2dx_support。
在LuaCocos2d.cpp文件中完成我们自定义类的注册,然后才能在Lua中使用我们C++中的自定义类。
tolua++工具的使用
环境说明:
系统:win7
工程:cocos2d-x lua工程
开发工具:vs2010
自定义类
类声明如下:SpriteFactory.h
#ifndef _SPRITE_FACTORY_H_
#define _SPRITE_FACTORY_H_
#include "cocos2d.h"
USING_NS_CC;
class SpriteFactory{
public:
static void createSprite(CCLayer* layer);
};
#endif
类实现如下:SpriteFactory.cpp
#include "SpriteFactory.h"
void SpriteFactory::createSprite(CCLayer* layer){
//创建一个CCLayerColor
CCLayer* addLayer = CCLayerColor::create(ccc4(200,100,100,255));
addLayer->setContentSize(CCSizeMake(layer->getContentSize().width/2,layer->getContentSize().height/2));
addLayer->setPosition(ccp(layer->getContentSize().width/2,layer->getContentSize().height/2));
//添加到目标Layer
layer->addChild(addLayer);
}
项目结构如下:
编写pkg文件
pkg文件的编写,需要遵循以下规则:
2. Writing .pkg files
1) enum keeps the same