Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- подключение
- -- *.render_script
- local framework = require ("assets.addons.framework")
- function init(self)
- // другой код
- go = framework.init(go)
- end
- --=====================================================
- --framework.lua
- local M = {}
- -------------------------------------------------------
- local mt = {}
- -- setter
- function mt.__newindex( self, index, value )
- -- положение
- if index == 'x' and type(value) == 'number' then
- self.set(".", "position.x", value)
- elseif index == 'y' and type(value) == 'number' then
- self.set(".","position.y", value)
- else
- rawset( self, index, value )
- end
- end
- -------------------------------------------------------
- --getter
- function mt.__index( self, index )
- -- положение
- if index == 'x' then
- return self.get(".", "position.x")
- elseif index == 'y' then
- return self.get(".", "position.y")
- else
- return rawget( self, index )
- end
- end
- -------------------------------------------------------
- function M.init(object)
- object = setmetatable(object, mt)
- return object
- end
- return M
- --=====================================================
- --Теперь в любом игровом объекте можно получать или устанавливать положение по X и Y так:
- go.x = 100
- go.y = 100
- --или поменять текущее положение на + 100 по X и Y
- go.x = go.x + 100
- go.y = go.y + 100
- print(go.x, go.y) -- > 200,200
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement