Sprite:hitTestPoint

From GiderosMobile
Revision as of 15:31, 13 July 2023 by Hgy29 (talk | contribs) (Text replacement - "<source" to "<syntaxhighlight")

Available since: Gideros 2011.6
Class: Sprite

Description

Checks whether the given coordinates (in global coordinate system) is in bounds of the sprite. <syntaxhighlight lang="lua"> (bool) = Sprite:hitTestPoint(x,y,visible,ref) </source>

Parameters

x: (number) the x coordinate to test
y: (number) the y coordinate to test
visible: (bool) test for hidden sprite (clipping/masking) optional, default = false
ref: (Sprite) specifies which sprite is the reference of x,y coordinates. If nil global coordinates are assumed optional, default = nil, new Gideros 2023.2

Return values

Returns (bool) true if the given global coordinates are in bounds of the sprite, false otherwise

Example

Moves a pixel with the mouse <syntaxhighlight lang="lua"> local pixel = Pixel.new(0xff0000, 1, 32, 32) local x0, y0, focus pixel:addEventListener(Event.MOUSE_DOWN, function(e) if pixel:hitTestPoint(e.x, e.y) then focus = true x0, y0 = e.x, e.y e:stopPropagation() end end) pixel:addEventListener(Event.MOUSE_MOVE, function(e) if focus then local dx = e.x - x0 local dy = e.y - y0 pixel:setX(self.camera:getX() + dx) pixel:setY(self.camera:getY() + dy) x0 = e.x y0 = e.y e:stopPropagation() end end) pixel:addEventListener(Event.MOUSE_UP, function(e) if focus then focus = false e:stopPropagation() end end) </source>