Other great resources: Official JS API docs, Scripting Forum
isVTOL()
Overview
Determine if a droid is using VTOL propulsion.You can use this function on droids owned by any player, not just your own.
Note: Recent versions of the API provide an .isVTOL property on Droid objects.
Availability
Warzone 3.1 Beta 2 and above.
Syntax
var returnValue = isVTOL(droid);
Parameters
| Parameter | Type | Mandatory | Description | Game version |
|---|---|---|---|---|
| droid | Droid object | The droid that you want to examine. | 3.1 Beta 2 |
Return values
| Value | Type | Description | Game version |
|---|---|---|---|
true | Boolean | The droid is a VTOL | 3.1 Beta 2 |
false | Boolean | The droid is using some other form of propulsion (wheels, hover, half-tracks, tracks, cyborg, etc.) | 3.1 Beta 2 |
| <error> | Error | The droid specified does not exist. Considering it the droid might have just been destroyed, I highly recommend wrapping this function in a " Or use the .isVTOL property on a Droid object if you can. | 3.1 Beta 2 |
Examples
var myDroids = enumDroid(me);
for (var i=0; i<myDroids.length; i++) {
if (isVTOL(myDroids[i])) {
// do stuff with my VTOL
}
}
Notes
This function can sometimes break unexpectedly, particularly if it's used in eventDestroyed() or on game objects that aren't droids.
I tend to use something like the function below as an alternative - it checks that the object is a droid and first tries to use the .isVTOL property of the droid object (if found) before using the isVTOL() function as a last resort:
// More reliable way to identify VTOLs
var isFixVTOL = function(obj) {
try {
return ( (obj.type == DROID) && (("isVTOL" in obj && obj.isVTOL) || isVTOL(obj)) );
} catch(e) {
console("isFixVTOL(): "+e.message);
}
}
See also
- Droids – list of API features associated with droids