装上了cocos code ide,配了路径之后,建立一个默认lua工程,发现无法调试,报错。

问了别人,在cocos2dconstants.lua的613行插入cc.AsyncTaskPool  =  cc.AsyncTaskPool or {}
然后发现可以直接运行了,但还是不能调试。重启,一切正常。

接下来看默认lua工程的代码。这是一个杀虫游戏。目录结构如下:

其中:
res是图片和声音的文件夹
app是游戏逻辑代码
cocos是cocos lua版代码
packages作用不明
config.lua是配置文件
main.lua是入口点函数
入口函数的代码如下:
  1. cc.FileUtils:getInstance():setPopupNotify(false)
  2. cc.FileUtils:getInstance():addSearchPath("src/")
  3. cc.FileUtils:getInstance():addSearchPath("res/")
  4. require "config"
  5. require "cocos.init"
  6. local function main()
  7. require("app.MyApp"):create():run()
  8. end
  9. local status, msg = xpcall(main, __G__TRACKBACK__)
  10. if not status then
  11. print(msg)
  12. end
程序开始后,xpcall会被执行,这个函数会调用main函数,如果发生错误,会调用 __G__TRACKBACK__函数。
xpcall表示以“保护模式”调用函数

函数main中的代码可以改成
  1. local function main()
  2. local myApp = require("app.MyApp")
  3. local appObj = myApp:create()
  4. appObj:run()
  5. end
首先加载了app/MyApp.lua这个文件,然后创建MyApp对象,最后运行之

这里需要补充一些lua写类的知识,可以参考这里:

接下来看MyApp.lua文件:
  1. local MyApp = class("MyApp", cc.load("mvc").AppBase)
  2. function MyApp:onCreate()
  3. math.randomseed(os.time())
  4. end
  5. return MyApp
首先创建了一个MyApp类(实际上是一个表),这个类继承自AppBase
class是cocos2d lua定义的函数,第一个参数表示类的名称,之后的参数表示继承的“基类”。






学习cocos code ide 的lua编程的更多相关文章

  1. Cocos Code IDE新建lua工程报错解决方案

    今天想用cocos code IDE新建一个工程,但是控制台报错:Read json file null failed, the reason is:null.我下载的是官方3.5源码,sdk,ndk ...

  2. 在cocos code ide的基础上构建自己的lua开发调试环境

    对于一种语言,其所谓开发调试环境, 大体有以下两方面的内容: 1.开发, 即代码编写, 主要是代码提示.补齐, 更高级一点的如变量名颜色等. 2.调试, 主要是运行状态下断点.查看变量.堆栈等. 现在 ...

  3. Cocos Code IDE + Lua初次使用FastTiledMap的坑

    近期想玩玩Lua.又想玩玩Cocos Code IDE.更加想写一个即时战斗的.防守的.会动的.有迷雾的.要探索的(旁白:给我停!)跑地图游戏. 于是我就用Cocos Code IDE来写游戏了.挑战 ...

  4. 搭建Cocos Code IDE开发环境

    Cocos Code IDE是Cocos2d-x团队开发的,用于开发Cocos2d-JS和Cocos2d-x Lua绑定的游戏工具,它是基于Eclipse[ Eclipse 是一个开放源代码的.基于J ...

  5. 【cocos2d-x】尝鲜 Cocos Code IDE(不断更新)

    Cocos Code IDE 是一个基于 Eclipse 的跨平台 IDE ,专门为 cocos2d lua & js 开发者准备,通过此工具.你能够方便的创建游戏project.编写而且调试 ...

  6. Cocos Code IDE里xcodeprojectlua脚本更新

    lua脚本改动后xcode须要clean又一次编译才干更新,这个是xcode里的老毛病了,网上有一些脚本但不是针对Cocos Code IDE的project文件夹的,这里列出 cocos2dx版本号 ...

  7. Cocos Code IDE (下载地址)

    Cocos Code IDE 1.2.0 下载地址       Cocos Code IDE 1.2.0 Win32 下载地址: http://www.cocos2d-x.org/filedown/c ...

  8. 配置Cocos Code IDE 可以正常运行的组合:jdk,sdk ,ndk, ant, cocos2d-x

    Cocos Code IDE:Cocos Code IDE 1.0.0-RC2 jdk:Cocos Code IDE 自动的jdk sdk:8以上 ndk:r9d(r10有bug),希望以后版本可以修 ...

  9. Cocos Code IDE

    https://www.cnblogs.com/luorende/p/6464181.html http://www.cocoachina.com/bbs/read.php?tid-464164.ht ...

随机推荐

  1. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q9-Q12)

    Question 9 You are designing an external binary large object (BLOB) store provider by implementing t ...

  2. Java File类总结和FileUtils类

    Java File类总结和FileUtils类 文件存在和类型判断 创建出File类的对象并不代表该路径下有此文件或目录. 用public boolean exists()可以判断文件是否存在. Fi ...

  3. Android Activity动画

    动画XML文件 slide_right_in.xml <?xml version="1.0" encoding="utf-8"?> <set ...

  4. App开发流程之右滑返回手势功能

    iOS7以后,导航控制器,自带了从屏幕左边缘右滑返回的手势功能. 但是,如果自定义了导航栏返回按钮,这项功能就失效了,需要自行实现.又如果需要修改手势触发范围,还是需要自行实现. 广泛应用的一种实现方 ...

  5. 【代码笔记】iOS-饼图

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @class QuizChartView; @interf ...

  6. git之三

    1.status命令与diff命令 前面我们已经成功地添加并提交了一个readme.txt文件,修改readme.txt如下: echo "Git is a distributed vers ...

  7. WPF学习之路(七)应用程序和窗口

    手动创建应用程序 1.创建Empty Project 2.添加引用 3.添加 ManualApp.cs 并添加下面的代码 [STAThread] public static void Main() { ...

  8. Virtual Box 杂记

    1. Virtual Box后台运行 a. VBoxManage startvm yourvmname --type headlessb. VBoxHeadless --startvm yourvmn ...

  9. SSIS技巧--优化数据流缓存

    问题 我们经常遇到一种情况,在SSMS中运行很慢的一个查询,当把查询转化成从源到目的数据库的SSIS数据流以后,需要花费几倍的时间!源和数据源都没有任何软硬件瓶颈,并且没有大量的格式转换.之前看了很多 ...

  10. 从键盘上输入一个正整数n,请按照以下五行杨辉三角形的显示方式, 输出杨辉三角形的前n行。请采用循环控制语句来实现。

    Scanner sc=new Scanner(System.in); System.out.println("请输入一个正整数:"); int ss=sc.nextInt(); i ...