I keep getting this Error when trying to assign new values to my mouse object via a function.
mouse.lua
--Class Moouse
Mouse = Object:extend()
--Class Methods
function Mouse:init()
self.T = {
x = nil,
y = nil,
iso_x = nil,
iso_y = nil
}
end
function Mouse:update(args)
self.T = {
x = (args.x - 640 - 64)/128,
y = (args.y - 320 - 64)/128,
iso_x = math.floor(((args.x * 0.25) + (args.y * 0.5))*4),
iso_y = math.floor(((args.x * -0.25) + (args.y * 0.5))*4)
}
end
main.lua
require "engine/object"
require "engine/node"
require "tile"
require "game"
require "moouse"
function love.load()
love.window.setMode(1500, 1000)
G = Game()
G:load()
M = Mouse()
MyFont = love.graphics.getFont()
mouse_x_text = love.graphics.newText(MyFont,"Penisx")
mouse_y_text = love.graphics.newText(MyFont, "Penisy")
mouse_x_transformed_text = love.graphics.newText(MyFont, "Penisy")
mouse_y_transformed_text = love.graphics.newText(MyFont, "Penisy")
end
function love.update()
M:update({x=love.mouse.getX, y=love.mouse.getY})
mouse_x_text:set((M.T.x))
mouse_y_text:set((M.T.y))
mouse_x_transformed_text:set(math.floor(((mouse_x * 0.25) + (mouse_y * 0.5))*4))
mouse_y_transformed_text:set(math.floor(((mouse_x * -0.25) + (mouse_y * 0.5))*4))
end
function love.draw()
love.graphics.draw(mouse_x_text, 0, 0)
love.graphics.draw(mouse_y_text, 0, 10)
love.graphics.draw(mouse_x_transformed_text, 0, 30)
love.graphics.draw(mouse_y_transformed_text, 0, 40)
G:render()
end
If I run then I’ll get:
Error
moouse.lua:16: attempt to perform arithmetic on field ‘x’ (a function
value)Traceback
[love “callbacks.lua”]:228: in function ‘handler’ moouse.lua:16: in
function ‘update’ main.lua:23: in function ‘update’ [love
“callbacks.lua”]:162: in function <[love “callbacks.lua”]:144> [C]: in
function ‘xpcall’