Eu achei vários, mas todos dando erros, não sei se é porque eu uso mysql mais olhem ai o erro.
Aparece quando o cara fala "!mudarnome Ronaldo" que seria o correto e não funfa, quando ele fala "!mudarnome (e ou !mudarnome ADM" tipo oque seria proibido o script nao deixa, mas o correto ele da esse erro.
OBS: Eu queria que se podeçem colocar para que os players possam colocar o nome assim "EaE MuLeKe" tendeu?
se tiver como por favor..
[08/04/2012 21:27:07] [Error - TalkAction Interface]
[08/04/2012 21:27:07] data/talkactions/scripts/trocarnome.lua:onSay
[08/04/2012 21:27:07] Description:
[08/04/2012 21:27:07] data/talkactions/scripts/trocarnome.lua:23: unfinished capture
[08/04/2012 21:27:07] stack traceback:
[08/04/2012 21:27:07] [C]: in function 'find'
[08/04/2012 21:27:07] data/talkactions/scripts/trocarnome.lua:23: in function <data/talkactions/scripts/trocarnome.lua:4>
meu script é esse.
local itemId, count, maxTextLenght, delay = 9971, 500, 18, 1 * 1000 local blacklistParam = {"god", "adm", "cm", "gm", "tutor", "tester", "coordenador", "ADM", "GOD", "CM", "GM", "Tutor", "(", ")", "[", "]", "{", "}", "Coordenador" } function onSay(cid, words, param, channel) local text, continue = "Você será kickado em 1 segundos.", true local stringSpaceStart, stringSpaceEnd = string.find(param, "[%s]*") if(db.getResult("SELECT `name` FROM `players` WHERE `name` = " .. db.escapeString(param) .. ";"):getID() ~= -1) then text, continue = "Este nome já está em uso.", false elseif(getPlayerItemCount(cid, itemId) < count) then text, continue = "Você não tem barras para mudar seu nome.", false elseif(not getTilePzInfo(getCreaturePosition(cid))) then text, continue = "Você deve estar dentro de uma zona de protecção para usar este comando.", false elseif(not tostring(param)) then text, continue = "Parametro inválido.", false elseif((stringSpaceEnd - stringSpaceStart) > 1) then text, continue = "Nome contém muitos espaços.", false elseif(string.len(tostring(param)) > maxTextLenght) then text, continue = "Voce passou o limite de 18 letras no seu nome." .. maxTextLenght .. " characters.", false elseif(string.lower(param:lower(), "[^%l%s]") ~= nil) then text, continue = "Você não pode usar simbolos ou nome de cargos da equipe.", false else for i = 1, #blacklistParam do if (string.find(string.lower(param), blacklistParam[i]) ~= nil) then text, continue = "Invalid name entry.", false break end end end if(continue == false) then doPlayerSendCancel(cid, text) return true end db.executeQuery("UPDATE `players` SET `name` = " .. db.escapeString(param) .. " WHERE `id` = " .. getPlayerGUID(cid) .. ";") doPlayerRemoveItem(cid, itemId, count) doPlayerSendTextMessage(cid, 25, text) addEvent(function(cid, forceLogout) if(isPlayer(cid)) then doRemoveCreature(cid, forceLogout) end end, delay, cid, false) return true end
Ajuda ai os caras do meu ot tão doido comigo.