MouseInput.lua 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. class "MouseImage" (EventHandler)
  2. function MouseImage:MouseImage(image)
  3. self.image = image
  4. self:EventHandler()
  5. end
  6. function MouseImage:handleEvent(e)
  7. if e:getDispatcher() == Services.Core:getInput() then
  8. local inputEvent = InputEvent(e)
  9. if e:getEventCode() == EVENT_MOUSEMOVE then
  10. local pos = inputEvent:getMousePosition()
  11. self.image:setPosition(pos.x, pos.y)
  12. delete(pos)
  13. elseif e:getEventCode() == EVENT_MOUSEDOWN then
  14. self.image:setColor(1,0,0,1)
  15. elseif e:getEventCode() == EVENT_MOUSEUP then
  16. self.image:setColor(1,1,1,1)
  17. end
  18. end
  19. end
  20. screen = Screen()
  21. image = ScreenImage("polycode_logo.png")
  22. image:setPositionMode(POSITION_CENTER)
  23. screen:addChild(image)
  24. mouseImage = MouseImage(image)
  25. Services.Core:getInput():addEventListener(mouseImage, EVENT_MOUSEMOVE)
  26. Services.Core:getInput():addEventListener(mouseImage, EVENT_MOUSEDOWN)
  27. Services.Core:getInput():addEventListener(mouseImage, EVENT_MOUSEUP)