cocos2d-x 2.2 利用python脚本在目录Classes内创建class
2015-08-24 15:57
423 查看
VS2012下,新建的类,生成的位置都是在 proj.win32 目录中的,如果考虑到以后再安卓及IOS上的编译,是不是应该把他们拷贝到 Classes 目录中去?
摸索了一下,发现VS2012直接创建不能直接指定文件夹,所以还是写个python脚本来干这个破事吧。谁让cocos2d-x里很多其他工具也用python脚本呢,那咱也来用一下。
需要2个文件,一个批处理文件【CreateClassInProject.bat】,一个py的脚本文件【CreateClassInProject.py】。
CreateClassInProject.bat
内容如下:
@echo off
echo CreateClassInProject:
rem set /p projectName=Please Input Project Name:
set /p className=Please Input Class Name:
echo Creating...
rem E:\cocos2d-x-3.0\CreateClassInProject.py -p %projectName% -n %className%
CreateClassInProject.py -p HelloCocoStudio -n %className%
echo Create successfully,Please add it in Classes.
pause
CreateClassInProject.py
内容如下:
import sys,os
def createFileInClass(projectName,newClassName):
print("------------- 001 --------------");
# projectDir = "projects\\"+projectName+"\\Classes";
projectDir = "Classes";
os.chdir(projectDir);
headName=newClassName+".h";
sourceName=newClassName+".cpp"
headFile=open(headName,"a");
tempFileName = "_"+newClassName.upper()+"_H_";
headFile.write("#ifndef "+ tempFileName +"\n#define "+tempFileName+"\n\n")
headFile.write("#include \"cocos2d.h\""+"\n\n");
headFile.write("using namespace cocos2d;\n\n");
headFile.write("class "+newClassName+"\n"+"{"+"\n"+"};"+"\n\n"+"#endif");
headFile.close();
sourceFile = open(sourceName,"a");
sourceFile.write("#include "+"\""+headName+"\"");
sourceFile.close()
from optparse import OptionParser
print("------------- 002 --------------");
parser = OptionParser()
parser.add_option("-p", "--dir", dest="projectName",help="the project name",)
parser.add_option("-n", "--new", dest="newClassName", help="new class")
(options, args) = parser.parse_args()
print("-------------john--------------");
createFileInClass(options.projectName,options.newClassName)
后面完善了再修改
摸索了一下,发现VS2012直接创建不能直接指定文件夹,所以还是写个python脚本来干这个破事吧。谁让cocos2d-x里很多其他工具也用python脚本呢,那咱也来用一下。
需要2个文件,一个批处理文件【CreateClassInProject.bat】,一个py的脚本文件【CreateClassInProject.py】。
CreateClassInProject.bat
内容如下:
@echo off
echo CreateClassInProject:
rem set /p projectName=Please Input Project Name:
set /p className=Please Input Class Name:
echo Creating...
rem E:\cocos2d-x-3.0\CreateClassInProject.py -p %projectName% -n %className%
CreateClassInProject.py -p HelloCocoStudio -n %className%
echo Create successfully,Please add it in Classes.
pause
CreateClassInProject.py
内容如下:
import sys,os
def createFileInClass(projectName,newClassName):
print("------------- 001 --------------");
# projectDir = "projects\\"+projectName+"\\Classes";
projectDir = "Classes";
os.chdir(projectDir);
headName=newClassName+".h";
sourceName=newClassName+".cpp"
headFile=open(headName,"a");
tempFileName = "_"+newClassName.upper()+"_H_";
headFile.write("#ifndef "+ tempFileName +"\n#define "+tempFileName+"\n\n")
headFile.write("#include \"cocos2d.h\""+"\n\n");
headFile.write("using namespace cocos2d;\n\n");
headFile.write("class "+newClassName+"\n"+"{"+"\n"+"};"+"\n\n"+"#endif");
headFile.close();
sourceFile = open(sourceName,"a");
sourceFile.write("#include "+"\""+headName+"\"");
sourceFile.close()
from optparse import OptionParser
print("------------- 002 --------------");
parser = OptionParser()
parser.add_option("-p", "--dir", dest="projectName",help="the project name",)
parser.add_option("-n", "--new", dest="newClassName", help="new class")
(options, args) = parser.parse_args()
print("-------------john--------------");
createFileInClass(options.projectName,options.newClassName)
后面完善了再修改
相关文章推荐
- cocos3.x 优化提升渲染速度
- cocos3.0+ shader
- cocos2dx 一个小控件
- 分析Cocos2d-x横版ACT手游源 2、server场景
- [寒江孤叶丶的Cocos2d-x之旅_38]LUA重新加载脚本
- Cocos2d-x layout (两)
- Cocos2d-x_创建多个滚动层(每层速度不同)
- 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第七节:PS基础:UV动画
- cocos2d-x源码中的一个BUG
- cocos2d-x3.x 设计与实现弹出对话框
- Cocos2dx 3.0 -- 有freeType做靠山的Label
- Cocos2d-x中,ProgressTimer类的用法
- Mac架设Cocos2d-JS开发环境问题记录
- Cocos2d相关图书推荐
- Diyal Cocos2d-x 游戏开发系列 从一个图片灰态需求开始
- 【cocos2d-x 3.7 飞机大战】 决战南海I (五) 添加子弹
- 【cocos2d-x 3.7 飞机大战】 决战南海I (四) 敌机管理
- Cocos2d-x 3.3版本及以上版本CCPointZero的改变
- 【cocos2d-x 3.7 飞机大战】 决战南海I (三) 敌机实现
- Cocos2D游戏之旅(六):流星、烟花、火焰、下雪、下雨粒子特效