# 目录结构 ### 项目外层目录结构 ``` Projectame (项目文件夹) ├──assets (资源文件夹) ├──library (资源库) ├──local (本地设置) ├──settings (项目设置) ├──build (构建生成目录) ├──temp └──project.json ``` ### 项目内层目录结构(assets内) ``` assets ├──animation (animation-clip等动画资源) ├──atlas (TexturePacker 处理后的图集资源) ├──audio (.mp3 等音频资源) ├──font (字体位图资源) ├──prefabs (预制资源目录) ├──scripts (js脚本) └─utils (js工具类) ├──textures (非合拼类的图片资源, 如场景背景图等) ├──resources (所有需要通过 cc.loader.loadRes 动态加载的资源) └──scene (场景资源) ``` # 命名规范 ### 目录命名 * 全部采用小写方式,以下划线分隔(参考项目内层目录结构) ### 层级管理器节点命名 * 全部采用小写方式,以下划线分隔 ``` Canvas ├──bg_normal └──rank_list ├──rank_btn └──rank_mask ``` ### JS文件命名 * 使用大驼峰式写法 ``` Bottle.js BottleSkin.js BottleRank.js ``` ## 资源文件命名 * 全部采用小写方式,以下划线分隔 ``` bottle_list.plist bottle_list.png bgm_bingo.mp3 ``` ### 常量命名 * 全部大写,单词间用_分隔 ``` const MODE_TYPE = 1 ``` ### 变量命名 * 使用小驼峰式命名法 ``` var gameStatus = "End" ``` ### 方法命名 * 使用小驼峰式命名法 * 统一使用ES6的方法简写写法 ``` cc.Class({ properties: {}, startGame() { } }) ``` ### 语法格式 * 缩进使用soft tab(4个空格),不要混用空格和tab * 使用双引号,不要使用单引号 ### 注释 ``` 语句注释使用 // //重置特殊模式 this.resetSpecialMode(); 方法注释使用 /** */ /** * 检查当前波段生成的特殊模式 * @param {String} mode 特殊模式名称{subline: 辅助线瓶; bingo: 华彩瓶; hit: 必中瓶} */ checkSpecialMode (mode) { } ``` ## 资源处理相关工具 * 生成字体位图 [BMFont](http://www.angelcode.com/products/bmfont) * 合拼图集资源 [TexturePacker](https://www.codeandweb.com/texturepacker) * 压缩png图 [PNGQuant](https://pngquant.org/)