Raycasting::testCapsule: Difference between revisions
No edit summary |
|||
| Line 9: | Line 9: | ||
*'''flags:''' Int | *'''flags:''' Int | ||
===Return value=== | ===Return value=== | ||
*'''object:''' position, surfaceNormal, material, entity | *'''object:''' position (Entity Coordinates) , surfaceNormal, material (Entity Model) , entity (Handle) | ||
==Example== | ==Example== | ||
<div class="header" style="background-color: #408DAE; color: #FFFFFF; border: 2px solid #408DAE;"> | <div class="header" style="background-color: #408DAE; color: #FFFFFF; border: 2px solid #408DAE;"> | ||
Revision as of 23:06, 17 May 2018
Raycast from point to point, where the ray has a radius.
Syntax
mp.raycasting.testCapsule(pos1, pos2, radius[, ignoredEntity][, flags]);
Required Arguments
- pos1: Vector3
- pos2: Vector3
- radius: Float
- ignoreEntity: Entity handle or object
- flags: Int
Return value
- object: position (Entity Coordinates) , surfaceNormal, material (Entity Model) , entity (Handle)
Example
Client-Side
mp.events.add('render', () => {
const startPosition = player.getBoneCoords(12844, 0.5, 0, 0);
const endPosition = new mp.Vector3(0, 0, 75);
const hitData = mp.raycasting.testCapsule(startPosition, endPosition, 0.5);
if (!hitData) {
mp.game.graphics.drawLine(startPosition.x, startPosition.y, startPosition.z, endPosition.x, endPosition.y, endPosition.z, 255, 255, 255, 255); // Is in line of sight
} else {
mp.game.graphics.drawLine(startPosition.x, startPosition.y, startPosition.z, endPosition.x, endPosition.y, endPosition.z, 255, 0, 0, 255); // Is NOT in line of sight
}
});