Cocos2d-x - Cocos Code IDEを使ってみた

専用IDEがあると聞いて使ってみた。


Download history versions of Cocos2d-x Cocos2d-html5 Cocos Studio | Cocos2d-x
まずはIDEをダウンロード。ヴァージョンは最新の1.2
IDEを起動するとCocos2d-xのパスを指定するよう求められる。のでダウンロード。
Cocos2d-x本体も最新の3.6を使おうと思ったのだけれどこれは実はIDE1.2では使えない。v3.4を使おう

新規作成とシミュレータ起動

IDEの環境設定でCocos=>Frameworks=>Engine Modeにチェック。Lua:にパスを設定してOK
ファイル=>新規=>Cocos Lua プロジェクト。
んでIDEのプレイアイコンからシミュレータ起動! したところで問題発生。シミュレータがうまく動かない
調べてみると
Update project to cocos2d-x 3.4? - Cocos2d-x Forum
まさにこれ。

対応は、
chukong/cocos-runtime-bin · GitHub
ここでDownloadZIPしてファイル貰って、runtimeにフォルダ名変えて、cocos2d-x-3.4/templates/lua-template-runtime/runtimeに差し替える。
差し替えたら新規プロジェクトし直すとシミュレータが動くようになる。

MVC

cocos luaプロジェクトはデフォルトでmvcパッケージが使われている。最初からmodelsフォルダとviewsフォルダが作られていた。app/views/GameScene.luaがコントローラの役割もやるっぽい。

main.luaは最初にMyAppを作る。MyAppは乱数の初期化だけしてあとはmvcに任せてる。

MyApp.lua

local MyApp = class("MyApp", cc.load("mvc").AppBase)

function MyApp:onCreate()
    math.randomseed(os.time())
end

return MyApp

package/mvc/AppBase.luaでその後に動かすシーンを指定する。

AppBase.lua

local AppBase = class("AppBase")

function AppBase:ctor(configs)
    self.configs_ = {
        viewsRoot  = "app.views",
        modelsRoot = "app.models",
        defaultSceneName = "MainScene",
    }

.......