Casts a ray through all sprites that have a shape (including physics sprites) and stores the result of any intersection. Results of a ray cast can be retrieved using the other ray cast functions such as GetRayCastNormalX. Physics sprites will only use the main shape assigned to the sprite using SetSpriteShape, to check compound shapes use PhysicsRayCast.
If the ray starts inside a shape that shape will not be counted in the results.
Sprites must be assigned a shape using one of the sprite shape commands or it will not be included in the collision results. This function is slower than the physics ray casts as it cannot make use of optimized structures that represent where the sprites are in the world relative to the ray.
This function filters the sprites that are checked so only sprites of certain categories are checked. The category parameter is a bitwise field that uses the lower 16 bits to represent each of the possible 16 categories used when setting up a sprite. The default value of all 1s means all categories will be included, whereas a value of all 0s means no categories will be included. You can set individual bits to set which ones should be checked.
This function can only keep track of sprites created using CreateSprite, if you have manually allocated memory for sprites you will need to cycle through your list of sprites with SpriteRayCastSingle or use the physics version.
Returns 1 if there was a collision, 0 if not.
integer SpriteRayCastCategory( category, x, y, x2, y2 )