Ir para conteúdo
  • Cadastre-se

(Resolvido){Resolvido} [TalkAction] Comando Change Name que remove item.


Ir para solução Resolvido por Noninhouh,

Posts Recomendados

function onSay(cid, words, param) 
local maxLen = 10 -- tamanho maximo do nome 
local itemid = 4343  ------ Numero do Item que será removido 
local proibido = {"!","@","*"} -- simbolos proibidos


for i = 1, #proibido do 
if string.find(tostring(param), proibido) then 
doPlayerSendCancel(cid,"Não pode usar símbolos em seu nome.") 
return TRUE 
end 
end 

if tostring(param) == "" then -- checkar se não é nome vazio 
doPlayerSendCancel(cid, "Você deve informar um nome.") 
return TRUE 
end 

if string.len(tostring(param)) > maxLen then 
doPlayerSendCancel(cid, "Você pode usar no máximo " .. maxLen .. " letras.") 
return TRUE 
end 

if not getTilePzInfo(getCreaturePosition(cid)) then 
doPlayerSendCancel(cid,"So pode ser usado em pz.") 
return TRUE 
end 

if getPlayerItemCount(cid, itemid) >= 1 then 
doPlayerRemoveItem(cid, itemid, 1) 
db.Query("UPDATE `players` SET `name` = '"..param.."' WHERE `id` = "..getPlayerGUID(cid)..";") 
doPlayerSendTextMessage(cid,25,"Você será kickado em 5 segundos.") 
addEvent(doRemoveCreature, 5*1000, cid, true) 
else 
doPlayerSendCancel(cid,"Você não possui o item " .. getItemNameById(itemid) .. ".") 
end 
return TRUE 
end

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites
  • Respostas 20
  • Created
  • Última resposta

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Popular Posts

Tente assim:   Com a tag: <talkaction words="!name" filter="quotation" event="script" value="name.lua"/>   No caso será usado assim: (!name"Jon Snow)   E é como o @yanloco70 disse, não fique sempre esperando pelos outros, procure ir mexendo no script até que você ache a solução do seu problema.

Então é melhor esperar alguém que saiba aparecer... Isso não vai dar em nada =S

@yanloco70 Esse aqui funciona em MySql: local config = { item = { Id = 1111, count = 0, }, maxTextLenght = 15, blacklistParam = {"account manager", "god", "cm", "gm", "tutor", "tester"}, minWordLenght = 3, delay = 2 } function onSay(cid, words, param, channel) local textCancel, t = config.text, string.explode(param, ",") if(param == '') then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") elseif((getPlayerGUIDByName(t[1]) ~= nil) an

Posted Images

function onSay(cid, words, param) 
local maxLen = 20 -- tamanho maximo do nome 
local itemid = 5958 ------ Numero do Item que será removido 
local proibido = {"!","@","*"} -- simbolos proibidos


for i = 1, #proibido do 
if string.find(tostring(param), proibido) then 
doPlayerSendCancel(cid,"Não pode usar símbolos em seu nome.") 
return TRUE 
end 
end 

if tostring(param) == "" then -- checkar se não é nome vazio 
doPlayerSendCancel(cid, "Você deve informar um nome.") 
return TRUE 
end 

if string.len(tostring(param)) > maxLen then 
doPlayerSendCancel(cid, "Você pode usar no máximo " .. maxLen .. " letras.") 
return TRUE 
end 

if param:lower() ~= param then
doPlayerSendCancel(cid, "Você não pode usar letras maiúsculas.")
return TRUE
end

if not getTilePzInfo(getCreaturePosition(cid)) then 
doPlayerSendCancel(cid,"So pode ser usado em pz.") 
return TRUE 
end 

if getPlayerItemCount(cid, itemid) >= 1 then 
doPlayerRemoveItem(cid, itemid, 1) 
db.Query("UPDATE `players` SET `name` = '"..param.."' WHERE `id` = "..getPlayerGUID(cid)..";") 
doPlayerSendTextMessage(cid,25,"Você será kickado em 5 segundos.") 
addEvent(doRemoveCreature, 5*1000, cid, true) 
else 
doPlayerSendCancel(cid,"Você não possui o item " .. getItemNameById(itemid) .. ".") 
end 
return TRUE 
end

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites
  Em 06/10/2017 em 01:06, yanloco70 disse:

function onSay(cid, words, param) 
local maxLen = 20 -- tamanho maximo do nome 
local itemid = 5958 ------ Numero do Item que será removido 
local proibido = {"!","@","*"} -- simbolos proibidos


for i = 1, #proibido do 
if string.find(tostring(param), proibido) then 
doPlayerSendCancel(cid,"Não pode usar símbolos em seu nome.") 
return TRUE 
end 
end 

if tostring(param) == "" then -- checkar se não é nome vazio 
doPlayerSendCancel(cid, "Você deve informar um nome.") 
return TRUE 
end 

if string.len(tostring(param)) > maxLen then 
doPlayerSendCancel(cid, "Você pode usar no máximo " .. maxLen .. " letras.") 
return TRUE 
end 

if param:lower() ~= param then
doPlayerSendCancel(cid, "Você não pode usar letras maiúsculas.")
return TRUE
end

if not getTilePzInfo(getCreaturePosition(cid)) then 
doPlayerSendCancel(cid,"So pode ser usado em pz.") 
return TRUE 
end 

if getPlayerItemCount(cid, itemid) >= 1 then 
doPlayerRemoveItem(cid, itemid, 1) 
db.Query("UPDATE `players` SET `name` = '"..param.."' WHERE `id` = "..getPlayerGUID(cid)..";") 
doPlayerSendTextMessage(cid,25,"Você será kickado em 5 segundos.") 
addEvent(doRemoveCreature, 5*1000, cid, true) 
else 
doPlayerSendCancel(cid,"Você não possui o item " .. getItemNameById(itemid) .. ".") 
end 
return TRUE 
end

Expand   Mostrar mais  


O erro é nessa linha: if string.find(tostring(param), proibido) then 

"bad argument #2 to 'find' (string expected, got table)
stack traceback:
[C]: in function 'find'"

Link para o post
Compartilhar em outros sites

function onSay(cid, words, param) 
local maxLen = 10 -- tamanho maximo do nome 
local itemid = 4343  ------ Numero do Item que será removido 

if tostring(param) == "" then -- checkar se não é nome vazio 
doPlayerSendCancel(cid, "Você deve informar um nome.") 
return TRUE 
end 

if string.len(tostring(param)) > maxLen then 
doPlayerSendCancel(cid, "Você pode usar no máximo " .. maxLen .. " letras.") 
return TRUE 
end 

if not getTilePzInfo(getCreaturePosition(cid)) then 
doPlayerSendCancel(cid,"So pode ser usado em pz.") 
return TRUE 
end 

if getPlayerItemCount(cid, itemid) >= 1 then 
doPlayerRemoveItem(cid, itemid, 1) 
db.executeQuery("UPDATE `players` SET `name` = '"..param.."' WHERE `id` = "..getPlayerGUID(cid)..";") 
doPlayerSendTextMessage(cid,25,"Você será kickado em 5 segundos.") 
addEvent(doRemoveCreature, 5*1000, cid, true) 
else 
doPlayerSendCancel(cid,"Você não possui o item " .. getItemNameById(itemid) .. ".") 
end 
return TRUE 
end

To Tentando cara.... N manjo de script 

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96842
    Tópicos
    519598
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo