Skymagnum 234 Postado Abril 25, 2013 Share Postado Abril 25, 2013 Ela retorna o nome do grupo do char ou seja, god, cm, etc... function getGroupNameById(groupId) local file = io.open("data/lib/groups.xml", "r") local name = "name" for info in file:read("*a"):gmatch("<groups(.-)</groups>") do if tonumber(info:match("group id=\"(.-)"\")) == groupId then local name = info:match(name .. "=\"(.-)\""):lower() return tostring(name) end end file:close() return nil end if getGroupNameById(getPlayerGroupId(cid)) == "god" then return true else return false end lembrando que a checagem deve sempre estar em minúscula. correto: "god" incorreto: "God" É isso ai flws. Link para o comentário Compartilhar em outros sites More sharing options...
caotic 393 Postado Abril 25, 2013 Share Postado Abril 25, 2013 (editado) Você pode usar o for no gmatch e ir procurando o groupId. Mais não seria mais fácil você já inserir na string do gtmach o que você procura tipo (""..id.."(.-)...") local t = "Ola EHEHEHE" for i in t:gmatch("Ola(.*)") do print(i) end Editado Abril 25, 2013 por caotic Link para o comentário Compartilhar em outros sites More sharing options...
Skymagnum 234 Postado Abril 25, 2013 Autor Share Postado Abril 25, 2013 Sim, tentei desse jeito só que deu uns erros lá. Link para o comentário Compartilhar em outros sites More sharing options...
MatheusGlad 424 Postado Abril 25, 2013 Share Postado Abril 25, 2013 Tente usar somente o string.match assim. file:read("*a"):match("<group id=\"" .. groupId .. "\" name=\"(.-)\"") Isso deve retornar o nome do grupo. Link para o comentário Compartilhar em outros sites More sharing options...
Skymagnum 234 Postado Abril 25, 2013 Autor Share Postado Abril 25, 2013 Tente usar somente o string.match assim. file:read("*a"):match("<group id=\"" .. groupId .. "\" name=\"(.-)\"") Isso deve retornar o nome do grupo. Vlw, eu usei de um jeito diferente que tava dando erro n sei pq lol Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados