Wowpedia

We have moved to Warcraft Wiki. Click here for information and the new URL.

READ MORE

Wowpedia
(Simplify... shouldn't return a value if no guildie found, don't need PREFIX_ for a local function... for loops are usually safer than while loops)
mNo edit summary
 
Line 3: Line 3:
 
A simple function that takes a players name and returns their index within the currently stored Guild Roster. Note that the index for a player in each Guild Roster will depend on how it is sorted and can be different from player to player. The index only remains constant between all calls to [[API GuildRoster|GuildRoster]]() and local to each machine.
 
A simple function that takes a players name and returns their index within the currently stored Guild Roster. Note that the index for a player in each Guild Roster will depend on how it is sorted and can be different from player to player. The index only remains constant between all calls to [[API GuildRoster|GuildRoster]]() and local to each machine.
   
GuildNameToIndex(name [, searchOffline])
+
GuildNameToIndex(name [, searchOffline])
   
 
== Function Parameters ==
 
== Function Parameters ==

Latest revision as of 21:09, 22 June 2009

This is a user-defined function that you can copy and paste into your addon.

A simple function that takes a players name and returns their index within the currently stored Guild Roster. Note that the index for a player in each Guild Roster will depend on how it is sorted and can be different from player to player. The index only remains constant between all calls to GuildRoster() and local to each machine.

GuildNameToIndex(name [, searchOffline])

Function Parameters

Arguments

name
String - The name of the player to search for. Case-insensitive.
searchOffline
Boolean - Whether to search the offline players for this player. Default is false.

Returns

index
Number - A number between 1 and the size of the guild (inclusive) if the player is found. Nil if they are not found. Note, most predefined guild functions do not error if passed an index of 0 and will return a null result (such a nil, 0, false or ""), however it is best you check for a return value before calling them (use better coding standards than Blizzard did!)

Example

local bob_i = GuildNameToIndex("bob")
local offline_bob_i = GuildNameToIndex("bob", true)

Code

local function GuildNameToIndex(name, searchOffline)
	name = string.lower(name)
	for i = 1,GetNumGuildMembers(searchOffline) do
		if string.lower((GetGuildRosterInfo(i))) == name then
			return i
		end
	end
end