IDEとLua言語を使ったサンプルコードと例文集です。Luaにはクラスの機能はありませんが、Cocos2d-xで用意されたclass関数を使うことにより、C++でのクラスに似た振る舞いを実装することができます。クラスの継承は、インスタンスを拡張することで行っているようです。サンプルコードクラスの作成例です。myClass:method(10)ノードを継承したクラス(C++オブジェクトからの継承)を定義するclass関数の第2引数にNodeのインスタンを返す関数を追加します。内部ではノードのインスタンスを複製してそれに新しいクラスの変数やメソッドを追加しているようです。C++のクラスかLuaのクラスかは、インスタンス変数ctype=1がC++、ctype=2がLuaのクラスとして区別しているようです。C++のオブジェクトからの継承とLuaのクラスからの継承は、クラスの定義方法が異なります。cc.Node:create()end)Luaのクラスを定義するclass(className)関数を使います。class("MyClass")Luaのクラスを継承したクラスを作成するLuaのクラスを継承(拡張)するにはclass関数の第2引数にクラスを渡します。MyClass)インスタンスを作成するインスタンスの作成にはnewメソッドを使います。MyClass.new()初期値を与えてインスタンスを作成するクラス側でコンストラクタに引数を渡すように設計しておけば初期値を与えてインスタンスを作成できます。MyClass.new(20)コンストラクタコンストラクタのメソッド名はctorです。インスタンス変数に代入endメソッドメソッドの定義方法です。ここにメソッドの処理を記述endクラス変数クラス変数の例です。"xyz"扱いには注意が必要で、常に「クラス名.変数」の形で使う必要があります。「インスタンス.変数」として代入した時点でインスタンス変数となってしまいます。C++の感覚で使うとミスをしやすいので、使わないほうが無難かもしれません。クラスメソッドクラスメソッドの例です。ここにメソッドの処理を記述endクラスのインスタンスからクラス名を取得するクラスのインスタンスからクラス名を取得するにはインスタンス変数の__cnameから取得できます。myClass.__cname)親クラスのメソッドを呼び出す親クラスのメソッドを呼び出す例です。コロン(:)ではなくピリオド(.)でメソッドを呼び出しているので注意してください。第1引数にselfを渡して呼び出します。