disableCollisionWith: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
Lou Montana (talk | contribs) m (Fix phrasing) |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 10: | Line 10: | ||
|gr1= Object Manipulation | |gr1= Object Manipulation | ||
|descr= Disable collision between | |descr= Disable collision between provided objects. The collision is always disabled for both objects in the arguments. | ||
{{Feature|important| | {{Feature|important| | ||
* this command does not disable collision between PhysX objects | |||
* this command has to be executed where objects are [[Multiplayer Scripting#Locality|local]], and as long as they do not change locality, the effect of this command will be global: | |||
** if the two objects are not local to the same computer, then it has to be executed on both computers to achieve the desired effect | |||
** if one or both objects change locality, the command needs to be executed again on the new [[owner]]'s machine(s) to maintain the effect | |||
{{ | * the feature works by having an object registering a reference to the other object; this command stores such reference on both objects - see {{Link|#Example 3}} | ||
}} | }} | ||
Line 33: | Line 27: | ||
|r1= [[Nothing]] | |r1= [[Nothing]] | ||
|x1= <sqf>[_veh1, _veh2] remoteExecCall ["disableCollisionWith", 0, _veh1];</sqf> | |x1= <sqf>player disableCollisionWith myWall;</sqf> | ||
|x2= <sqf>[_veh1, _veh2] remoteExecCall ["disableCollisionWith", 0, _veh1];</sqf> | |||
|x3= <sqf> | |||
// this command stores a reference to the other object on both arguments: | |||
_obj1 disableCollisionWith _obj2; // _obj1 has a reference to _obj2, disabling collision with it | |||
// _obj2 has a reference to _obj1, disabling collision with it | |||
// only one reference is required to disable collision, allowing more than one disabled collision | |||
_obj1 disableCollisionWith _obj3; // _obj1 has a reference to _obj3, disabling collision with it | |||
// _obj2 has a reference to _obj1, disabling collision with it | |||
// _obj3 has a reference to _obj1, disabling collision with it | |||
// factually, _obj1 has collisions disabled with _obj2 and _obj3 | |||
// note that _obj1 collision can be changed without using the command on it directly | |||
_obj2 disableCollisionWith _obj3; // _obj1 has no more reference to _obj3 and can collide with it | |||
// _obj2 has a reference to _obj3, disabling collision with it | |||
// _obj3 has a reference to _obj2, disabling collision with it | |||
</sqf> | |||
|seealso= [[collisionDisabledWith]] [[enableCollisionWith]] | |seealso= [[collisionDisabledWith]] [[enableCollisionWith]] | ||
}} | }} | ||
{{Note | |||
|user= Ranwer | |||
|timestamp= 20150404120300 | |||
|text= [[disableCollisionWith]] is basically a script that when you apply it to an object, and your unit can go through it like a ghost. However, if you wish the object to be solid again, you may wish to use [[enableCollisionWith]]. | |||
[[disableCollisionWith]] is basically a script that when you apply it to an object, and your unit can go through it like a ghost. However, if you wish the object to be solid again, you may wish to use [[enableCollisionWith]]. | |||
<br> | <br> | ||
An example for this is: | An example for this is: | ||
<sqf>// name of unit in editor such as player1 | <sqf> | ||
// name of unit in editor such as player1 | |||
// name of object in editor such as barrel1 | // name of object in editor such as barrel1 | ||
barrel1 disableCollisionWith player1; | barrel1 disableCollisionWith player1; | ||
// to make the barrel solid again, do this as vice versa if you know what you are doing! | // to make the barrel solid again, do this as vice versa if you know what you are doing! | ||
barrel1 enableCollisionWith player1;</sqf> | barrel1 enableCollisionWith player1; | ||
</sqf> | |||
On a side note: this can come in handy a lot if you want a unit to sit on the back of a car or on top of a container | On a side note: this can come in handy a lot if you want a unit to sit on the back of a car or on top of a container | ||
}} | |||
{{Note | |||
|user= bloodwyn1756 | |||
|timestamp= 20180529065800 | |||
|text= This command does not disable the roadway LOD. | |||
This command does not disable the roadway LOD. | }} | ||
Latest revision as of 11:29, 30 August 2022
Description
- Description:
- Disable collision between provided objects. The collision is always disabled for both objects in the arguments.
- Groups:
- Object Manipulation
Syntax
- Syntax:
- vehicle1 disableCollisionWith vehicle2
- Parameters:
- vehicle1: Object
- vehicle2: Object
- Return Value:
- Nothing
Examples
- Example 1:
- Example 2:
- Example 3:
- // this command stores a reference to the other object on both arguments: _obj1 disableCollisionWith _obj2; // _obj1 has a reference to _obj2, disabling collision with it // _obj2 has a reference to _obj1, disabling collision with it // only one reference is required to disable collision, allowing more than one disabled collision _obj1 disableCollisionWith _obj3; // _obj1 has a reference to _obj3, disabling collision with it // _obj2 has a reference to _obj1, disabling collision with it // _obj3 has a reference to _obj1, disabling collision with it // factually, _obj1 has collisions disabled with _obj2 and _obj3 // note that _obj1 collision can be changed without using the command on it directly _obj2 disableCollisionWith _obj3; // _obj1 has no more reference to _obj3 and can collide with it // _obj2 has a reference to _obj3, disabling collision with it // _obj3 has a reference to _obj2, disabling collision with it
Additional Information
- See also:
- collisionDisabledWith enableCollisionWith
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on Apr 04, 2015 - 12:03 (UTC)
-
disableCollisionWith is basically a script that when you apply it to an object, and your unit can go through it like a ghost. However, if you wish the object to be solid again, you may wish to use enableCollisionWith.
An example for this is:On a side note: this can come in handy a lot if you want a unit to sit on the back of a car or on top of a container// name of unit in editor such as player1 // name of object in editor such as barrel1 barrel1 disableCollisionWith player1; // to make the barrel solid again, do this as vice versa if you know what you are doing! barrel1 enableCollisionWith player1;
- Posted on May 29, 2018 - 06:58 (UTC)
- This command does not disable the roadway LOD.