Entity::setNoCollision: Difference between revisions

From RAGE Multiplayer Wiki
m (Replaced HTML with template)
 
(2 intermediate revisions by the same user not shown)
Line 2: Line 2:


==Syntax==
==Syntax==
<pre>entity.setNoCollision(entity2, collision);</pre>
<pre>entity.setNoCollision(entity2, enableThisFrame);</pre>


=== Required Arguments ===
=== Required Arguments ===
*'''entity2:''' '''Entity handle'''
*'''entity2:''' '''Entity handle'''
*'''collision:''' '''Boolean'''
*'''enableThisFrame:''' '''Boolean'''
** '''false''' = no collison, '''true''' = enabled collisions
** '''false''' = disabled forever, '''true''' = disabled only this frame


===Return value===
===Return value===
Line 15: Line 15:
{{ClientsideCode|
{{ClientsideCode|
<pre>
<pre>
mp.events.add('enableCollisions', () => {
//to re-enable collision just stop executing the code, the game will re-enable it on its own.
mp.players.forEach(player => {
mp.events.add('render', () => {
mp.players.local.vehicle.setNoCollision(player.vehicle.handle, true);
if (!mp.players.local.vehicle) return;
player.vehicle.setAlpha(255);
mp.players.forEachInRange(mp.players.local.position, 50, (target) => {
player.setAlpha(255);
if (!target.vehicle) return;
mp.players.local.vehicle.setNoCollision(target.vehicle.handle, true);
target.vehicle.setNoCollision(mp.players.local.vehicle.handle, true);
});
});
});
});


mp.events.add('disableCollisions', () => {
mp.players.forEach(player => {
mp.players.local.vehicle.setNoCollision(player.vehicle.handle, false);
player.vehicle.setAlpha(102);
player.setAlpha(255);
});
});
</pre>
</pre>
}}
}}


==See also==
==See also==
{{Entity_function_c}}
{{Entity_definition_c}}
[[Category:Clientside API]]
[[Category:Clientside API]]

Latest revision as of 18:03, 1 May 2024

Calling this function, regardless of the 'unknown' value, disabled collision between two entities.

Importance of entity1 and 2 order is unclear.

Syntax

entity.setNoCollision(entity2, enableThisFrame);

Required Arguments

  • entity2: Entity handle
  • enableThisFrame: Boolean
    • false = disabled forever, true = disabled only this frame

Return value

  • Undefined

Example

Client-Side
//to re-enable collision just stop executing the code, the game will re-enable it on its own.
mp.events.add('render', () => {
	if (!mp.players.local.vehicle) return;
	mp.players.forEachInRange(mp.players.local.position, 50, (target) => {
		if (!target.vehicle) return;
		mp.players.local.vehicle.setNoCollision(target.vehicle.handle, true);
		target.vehicle.setNoCollision(mp.players.local.vehicle.handle, true);
	});
});

See also