Gideros では、カスタム イベントを利用してスコアを更新しています。イベントのレシーバー用に次のコードがあります (簡潔にするために一部の行を省略しています)。
GameInfoPanel = Core.class(Sprite)
function GameInfoPanel:init()
self:addEventListener("add_score", self.onAddScore, self) -- Registering event listener here
self.score = 0
end
function GameInfoPanel:onAddScore(event)
self.score = self.score + event.score -- << This line is never reached
end
そして、これはイベントをトリガーするコードです:
local score_event = Event.new("add_score")
score_event.score = 100
self:dispatchEvent(score_event)
ただし、上記のリスナーとして登録されている関数には到達しません。