Returns information about the player's specializations.
local id, name, description, icon, background, role = GetSpecializationInfo(specIndex [, isInspect [, isPet [, ? [, genderCode]]]])
- Number - Index of the specialization to query, ascending from 1 to GetNumSpecializations().
- Optional boolean - If true, query specialization information for the inspected unit.
- Optional boolean - If true, query specialization information for the player's pet.
- Number - Index returned by UnitSex().
- Number - specializationID.
- String - specialization name, e.g. "Balance".
- String - description of the specialization, e.g. "Can take on the form of a powerful Moonkin, balancing the power of Arcane and Nature magic to destroy enemies at a distance."
- String - Texture path to this specialization's icon.
- String - Background texture name for this talent tree; prepend "Interface\TALENTFRAME\" to this value for a valid texture path.
- String - This specialization's intended role in a party, one of "DAMAGER", "TANK", "HEALER".
- Despite the argument names, this function does not appear to return valid information for inspected units. FrameXML uses GetInspectSpecialization("unit") to retrieve a specialization ID instead.
- Warning: As of 2012/07/12, this seems to be quite often buggy. The return of GetInspectSpecialization() should be a number less than 500, but sometimes is far greater and not interpretable. FrameXML is therefore 'validating' the value by calling GetSpecializationRoleByID(), and only if that returns a non-nil value, it decodes the number with GetSpecializationInfoByID().