【Defold】 Lua で class の様なものを書く方法
正確には class の様なものを書く方法です。
目次
実装例
クラスとして扱う
local M = {}
function M.new()
local instance = {}
instance.state = 0
function instance.test_print()
print("test_print called")
end
return instance
end
return M
使用例
-- クラスの取り込み
local sample_class = require("main.sampleclass") -- main ディレクトリ以下に配置した場合
function init(self)
self.sample = sample_class .new()
-- 関数呼び出し
self.sample.test_print();
end
class の様にアクセスできるので、個人的には違和感が無くおススメです。