WoW:API GetGlyphSocketInfo: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
(Updated with new information)
m (Move page script moved page API GetGlyphSocketInfo to API GetGlyphSocketInfo without leaving a redirect)
 
(3 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{wowapi}} __NOTOC__
{{wowapi}} __NOTOC__
Returns information on a glyph socket.
Returns information on a glyph socket.
enabled, glyphType, glyphTooltipIndex, glyphSpellID, icon = GetGlyphSocketInfo(socketID[, talentGroup]);
==Arguments==
;socketID : Number - glyph [Glyph SocketID|socket index]] (1 to GetNumGlyphSockets() )
;talentGroup : Optional Number - (dual) specialization index (1 to {{api|GetNumTalentGroups}}(...)).
== Returns ==
;enabled: Boolean - 1 if available, nil if locked.
;glyphType : Number - GLYPHTYPE_PRIME (0), GLYPHTYPE_MAJOR (1), or GLYPHTYPE_MINOR (2)
;glyphTooltipIndex : Number - Index to be used with GLYPH_SLOT_TOOLTIP#
;glyphSpellID : Number - spell ID of socketted glyph, nil if no glyph is socketed.
;icon : String - Glyph rune texture path.


enabled, glyphType, glyphSpellID, icon = GetGlyphSocketInfo([[Glyph SocketID|SocketID]]);
== Parameters ==
=== Arguments ===
:;[[Glyph SocketID|SocketID]] : Integer - Socket number.
=== Returns ===
:;enabled: Boolean - 1 if available. '''nil''' if locked.
:;glyphType : Integer - GLYPHTYPE_MAJOR or GLYPHTYPE_MINOR (1 is Major, 2 is Minor)
:;glyphSpellID : Integer - '''SpellID''' of socketted glyph. '''nil''' if none.
:;icon : String - Rune icon path. (Not the same icon as returned by [[API GetSpellInfo | GetSpellInfo]])
== Examples ==
== Examples ==
The following code scans all the glyph sockets and prints out the status of each one.
The following code scans all the glyph sockets and prints out the status of each one.
  for i = 1, NUM_GLYPH_SLOTS do
  for i = 1, NUM_GLYPH_SLOTS do
   local enabled, glyphType, glyphSpellID, icon = GetGlyphSocketInfo(i);
   local enabled, glyphType, glyphTooltipIndex, glyphSpellID, icon = GetGlyphSocketInfo(i);
   if ( enabled ) then
   if ( enabled ) then
   local link = [[API GetGlyphLink|GetGlyphLink]](i);-- Retrieves the Glyph's link (nil of no glyph in Socket);
   local link = [[API GetGlyphLink|GetGlyphLink]](i);-- Retrieves the Glyph's link ("" if no glyph in Socket);
   if ( link ) then
   if ( link ~= "") then
     DEFAULT_CHAT_FRAME:AddMessage("Glyph Socket "..i.." contains "..link);
     DEFAULT_CHAT_FRAME:AddMessage("Glyph Socket "..i.." contains "..link);
   else
   else
Line 26: Line 29:
   end
   end
  end
  end
== Notes ==
== Notes ==
"AddOns/Blizzard_GlyphUI/Blizzard_GlyphUI.lua"
* {{api|GetSpellInfo}} can be used to translate glyphSpellID to a glyph name.
Passes '''glyphSpellID''' to [[API GetSpellInfo | GetSpellInfo]] to retrieve the glyph name.
* The talentGroup argument was added in [[Patch 3.1]].
* The glyphTooltipIndex argument was added in [[Patch 4.0.1]].

Latest revision as of 04:45, 15 August 2023

WoW API < GetGlyphSocketInfo

Returns information on a glyph socket.

enabled, glyphType, glyphTooltipIndex, glyphSpellID, icon = GetGlyphSocketInfo(socketID[, talentGroup]);

Arguments

socketID
Number - glyph [Glyph SocketID|socket index]] (1 to GetNumGlyphSockets() )
talentGroup
Optional Number - (dual) specialization index (1 to GetNumTalentGroups(...)).

Returns

enabled
Boolean - 1 if available, nil if locked.
glyphType
Number - GLYPHTYPE_PRIME (0), GLYPHTYPE_MAJOR (1), or GLYPHTYPE_MINOR (2)
glyphTooltipIndex
Number - Index to be used with GLYPH_SLOT_TOOLTIP#
glyphSpellID
Number - spell ID of socketted glyph, nil if no glyph is socketed.
icon
String - Glyph rune texture path.

Examples

The following code scans all the glyph sockets and prints out the status of each one.

for i = 1, NUM_GLYPH_SLOTS do
 local enabled, glyphType, glyphTooltipIndex, glyphSpellID, icon = GetGlyphSocketInfo(i);
 if ( enabled ) then
  local link = GetGlyphLink(i);-- Retrieves the Glyph's link ("" if no glyph in Socket);
  if ( link ~= "") then
   DEFAULT_CHAT_FRAME:AddMessage("Glyph Socket "..i.." contains "..link);
  else
   DEFAULT_CHAT_FRAME:AddMessage("Glyph Socket "..i.." is unlocked and empty!");
  end
 else
  DEFAULT_CHAT_FRAME:AddMessage("Glyph Socket "..i.." is locked!");
 end
end

Notes

  • GetSpellInfo can be used to translate glyphSpellID to a glyph name.
  • The talentGroup argument was added in Patch 3.1.
  • The glyphTooltipIndex argument was added in Patch 4.0.1.