using lua as a scriptable ui logic component