isKindOf

From Bohemia Interactive Community
Jump to: navigation, search
Introduced with Armed Assault version 1.00
  

Click on the images for descriptions

Introduced in

Game:
Armed Assault
Version:
1.00

Description

Description:
Checks whether the object is (a subtype) of the given type. While main syntax and alt syntax support only CfgVehicles, CfgAmmo and CfgNonAIVehicles, alt syntax 2 allows to specify any config, including mission config.

Syntax

Syntax:
object isKindOf typeName
Parameters:
object: Object
typeName: String
Return Value:
Boolean

Alternative Syntax

Syntax:
typeName1 isKindOf typeName2
Parameters:
typeName1: String
typeName2: String
Return Value:
Boolean

Alternative Syntax 2

Syntax:
typeName1 isKindOf [typeName2, targetConfig]         (since Arma 3 v1.47)
Parameters:
typeName1: String
[typeName2, targetConfig]: - Array
typeName2: String
targetConfig: Config
Return Value:
Boolean

Examples

Example 1:
vehicle player isKindOf "Tank";
Example 2:
"BMP2" isKindOf "Tank";
Example 3:
currentWeapon player isKindOf ["Rifle", configFile >> "CfgWeapons"];

Additional Information

Multiplayer:
-
See also:
countTypetypeOfinheritsFromconfigHierarchy Arma 2 CfgVehicles

Notes

Only post proven facts here. Report bugs on the feedback tracker. Use the talk page or the forums for discussions.
Add New Note | How To

Notes

Posted on April 23, 2007 - 16:34
Kronzky
This command can be used on the whole hierarchical class tree (i.e. when checking a HMMWV, one could test for "HMMWV50", "Car", "LandVehicle", etc., all of which would return true.)
Posted on 16 Apr, 2008
Dr_Eyeball
It appears isKindOf is limited to the CfgVehicles branch of the class hierachy.
So CfgWeapons, CfgMagazines, etc will return false for checks like: ("M9" isKindOf "Pistol") returns false
Posted on 8 Nov, 2009
.kju
In a2 isKindOf also works for CfgAmmo in addition to CfgVehicles: ("M_9M311_AA" isKindOf "MissileBase") returns true. NOT for CfgWeapons, CfgMagazines and others..

Bottom Section

Posted on June 16, 2015 - 17:54 (UTC)
James
In case you cannot use isKindOf because of the reasons stated, just use BIS fnc returnParents with class names as return value: _isKindOf = "Rifle" in [(configFile >> "CfgWeapons" >> "BWA3_G36K"),true] call BIS_fnc_returnParents; // is true
Posted on September 6, 2015 - 22:21 (UTC)
Basstard
In A3 isKindOf works well with CfgWeapons and CfgMagazines using the syntax from example 3.
It should be prefered to James' solution as it performs more than 25x faster. Tested in debug console with the following code snippets:
bool = "CA_Magazine" in ([(configFile >> "CfgMagazines" >> "HandGrenade"),true] call BIS_fnc_returnParents); --> 0.12111ms bool = "HandGrenade" isKindOf ["CA_Magazine", configFile >> "CfgMagazines"]; --> 0.00439453ms
When checking in CfgVehicles the syntax from example 2 performs a little faster.